pluto_hdl_adi/docs/regmap/adi_regmap_spi_engine.txt

537 lines
12 KiB
Plaintext
Raw Normal View History

TITLE
SPI Engine (axi_spi_engine)
2024-03-20 11:53:03 +00:00
AXI_SPI_ENGINE
ENDTITLE
############################################################################################
############################################################################################
REG
0x00
VERSION
Version of the peripheral. Follows semantic versioning. Current version 1.02.00.
ENDREG
FIELD
[31:16] 0x00000001
VERSION_MAJOR
RO
ENDFIELD
FIELD
[15:8] 0x00000002
VERSION_MINOR
RO
ENDFIELD
FIELD
[7:0] 0x00000000
VERSION_PATCH
RO
ENDFIELD
############################################################################################
############################################################################################
REG
0x01
PERIPHERAL_ID
ENDREG
FIELD
[31:0] ''ID''
PERIPHERAL_ID
RO
Value of the ID configuration parameter.
In case of multiple instances, each instance will have a unique ID.
ENDFIELD
############################################################################################
############################################################################################
REG
0x02
SCRATCH
ENDREG
FIELD
2024-03-20 11:53:03 +00:00
[31:0] 0x0
SCRATCH
RW
Scratch register useful for debug.
ENDFIELD
############################################################################################
############################################################################################
REG
0x03
DATA_WIDTH
ENDREG
FIELD
2024-03-20 11:53:03 +00:00
[7:4] ''NUM_OF_SDI''
NUM_OF_SDI
RO
Number of SDI.
It is equal with the maximum supported SDI lines in bits.
ENDFIELD
FIELD
[3:0] ''DATA_WITH''
DATA_WIDTH
RO
Data width of the SDI/SDO parallel interface.
It is equal with the maximum supported transfer length in bits.
ENDFIELD
############################################################################################
############################################################################################
REG
0x04
OFFLOAD_MEM_ADDR_WIDTH
ENDREG
FIELD
[15:8] 0x04
SDO_MEM_ADDRESS_WIDTH
RO
Address width for the data (SDO) memory on the Offload Module.
The size of the memory is thus ``2**SDO_MEM_ADDRESS_WIDTH`` data words.
ENDFIELD
FIELD
[7:0] 0x04
CMD_MEM_ADDRESS_WIDTH
RO
Address width for the command memory on the Offload Module.
The size of the command memory is thus ``2**CMD_MEM_ADDRESS_WIDTH`` instructions.
ENDFIELD
############################################################################################
############################################################################################
REG
0x05
FIFO_ADDR_WIDTH
ENDREG
FIELD
[31:24] 0x05
SDI_FIFO_ADDRESS_WIDTH
RO
Address width for the SDI FIFO.
The size of the SDI FIFO is thus ``2**SDI_FIFO_ADDRESS_WIDTH``.
ENDFIELD
FIELD
[23:16] 0x05
SDO_FIFO_ADDRESS_WIDTH
RO
Address width for the SDO FIFO.
The size of the SDO FIFO is thus ``2**SDO_FIFO_ADDRESS_WIDTH``.
ENDFIELD
FIELD
[15:8] 0x04
SYNC_FIFO_ADDRESS_WIDTH
RO
Address width for the synchronization FIFO.
The size of the synchronization FIFO is thus ``2**SYNC_FIFO_ADDRESS_WIDTH``.
ENDFIELD
FIELD
[7:0] 0x04
CMD_FIFO_ADDRESS_WIDTH
RO
Address width for the command FIFO.
The size of the command FIFO is thus ``2**CMD_FIFO_ADDRESS_WIDTH``.
ENDFIELD
############################################################################################
############################################################################################
REG
0x10
ENABLE
ENDREG
FIELD
2024-03-20 11:53:03 +00:00
[31:0] 0x1
ENABLE
RW
Enable register. If the enable bit is set to 1 the internal state of the peripheral is reset.
For proper operation, the bit needs to be set to 0.
ENDFIELD
############################################################################################
############################################################################################
REG
0x20
IRQ_MASK
ENDREG
FIELD
2024-03-20 11:53:03 +00:00
[0] 0x0
CMD_ALMOST_EMPTY
RW
If set to 0 the CMD_ALMOST_EMPTY interrupt is masked.
ENDFIELD
FIELD
2024-03-20 11:53:03 +00:00
[1] 0x0
SDO_ALMOST_EMPTY
RW
If set to 0 the SDO_ALMOST_EMPTY interrupt is masked.
ENDFIELD
FIELD
2024-03-20 11:53:03 +00:00
[2] 0x0
SDI_ALMOST_FULL
RW
If set to 0 the SDI_ALMOST_FULL interrupt is masked.
ENDFIELD
FIELD
2024-03-20 11:53:03 +00:00
[3] 0x0
SYNC_EVENT
RW
If set to 0 the SYNC_EVENT interrupt is masked.
ENDFIELD
2024-03-20 11:53:03 +00:00
FIELD
[4] 0x0
OFFLOAD_SYNC_ID_PENDING
RW
If set to 0 the OFFLOAD_SYNC_ID_PENDING interrupt is masked.
ENDFIELD
############################################################################################
############################################################################################
REG
0x21
IRQ_PENDING
ENDREG
FIELD
2024-03-20 11:53:03 +00:00
[31:0] 0x0
IRQ_PENDING
RW1C
Pending IRQs with mask.
ENDFIELD
############################################################################################
############################################################################################
REG
0x22
IRQ_SOURCE
ENDREG
FIELD
2024-03-20 11:53:03 +00:00
[31:0] 0x0
IRQ_SOURCE
RO
Pending IRQs without mask.
ENDFIELD
############################################################################################
############################################################################################
REG
0x30
SYNC_ID
ENDREG
FIELD
2024-03-20 11:53:03 +00:00
[31:0] 0xXXXXXXXX
SYNC_ID
RO
Last synchronization event ID received from the SPI engine control interface.
ENDFIELD
############################################################################################
############################################################################################
2024-03-20 11:53:03 +00:00
REG
0x31
OFFLOAD_SYNC_ID
ENDREG
FIELD
[31:0] 0x0
OFFLOAD_SYNC_ID
RO
Offload Sync ID.
ENDFIELD
############################################################################################
############################################################################################
REG
0x34
CMD_FIFO_ROOM
ENDREG
FIELD
2024-03-20 11:53:03 +00:00
[31:0] log2((2^''CMD_FIFO_ADDRESS_WIDTH'')-1)
CMD_FIFO_ROOM
RO
Number of free entries in the command FIFO. The reset value of the CMD_FIFO_ROOM register
depends on the setting of the CMD_FIFO_ADDRESS_WIDTH parameter.
ENDFIELD
############################################################################################
############################################################################################
REG
0x35
SDO_FIFO_ROOM
ENDREG
FIELD
2024-03-20 11:53:03 +00:00
[31:0] log2((2^''SDO_FIFO_ADDRESS_WIDTH'')-1)
SDO_FIFO_ROOM
RO
Number of free entries in the serial-data-out FIFO. The reset value of the SDO_FIFO_ROOM
register depends on the setting of the SDO_FIFO_ADDRESS_WIDTH parameter.
ENDFIELD
############################################################################################
############################################################################################
REG
0x36
SDI_FIFO_LEVEL
ENDREG
FIELD
2024-03-20 11:53:03 +00:00
[31:0] 0x0
SDI_FIFO_LEVEL
RO
Number of valid entries in the serial-data-in FIFO.
ENDFIELD
############################################################################################
############################################################################################
REG
0x38
CMD_FIFO
ENDREG
FIELD
2024-03-20 11:53:03 +00:00
[31:0] 0xXXXXXXXX
CMD_FIFO
WO
Command FIFO register. Writing to this register inserts an entry into the command FIFO.
Writing to this register when the command FIFO is full has no effect and the written entry
2024-03-20 11:53:03 +00:00
is discarded. Reading from this register always returns 0x0.
ENDFIELD
############################################################################################
############################################################################################
REG
0x39
SDO_FIFO
ENDREG
FIELD
2024-03-20 11:53:03 +00:00
[31:0] 0xXXXXXXXX
SDO_FIFO
WO
SDO FIFO register. Writing to this register inserts an entry into the SDO FIFO.
Writing to this register when the SDO FIFO is full has no effect and the written entry is
2024-03-20 11:53:03 +00:00
discarded. Reading from this register always returns 0x0.
ENDFIELD
############################################################################################
############################################################################################
REG
0x3a
SDI_FIFO
ENDREG
FIELD
2024-03-20 11:53:03 +00:00
[31:0] 0xXXXXXXXX
SDI_FIFO
RO
SDI FIFO register. Reading from this register removes the first entry from the SDI FIFO.
Reading this register when the SDI FIFO is empty will return undefined data.
Writing to it has no effect.
ENDFIELD
############################################################################################
############################################################################################
2024-03-20 11:53:03 +00:00
REG
0x3b
SDI_FIFO_MSB
ENDREG
FIELD
[31:0] 0xXXXXXXXX
SDI_FIFO_MSB
RO
Store SDI's 32 bits MSB, if exists.
ENDFIELD
############################################################################################
############################################################################################
REG
0x3c
SDI_FIFO_PEEK
ENDREG
FIELD
2024-03-20 11:53:03 +00:00
[31:0] 0xXXXXXXXX
SDI_FIFO_PEEK
RO
SDI FIFO peek register.
Reading from this register returns the first entry from the SDI FIFO, but without removing
it from the FIFO. Reading this register when the SDI FIFO is empty will return undefined
data. Writing to it has no effect.
ENDFIELD
############################################################################################
############################################################################################
REG
0x40
OFFLOAD0_EN
ENDREG
FIELD
2024-03-20 11:53:03 +00:00
[31:0] 0x0
OFFLOAD0_EN
RW
Set this bit to enable the offload module.
ENDFIELD
############################################################################################
############################################################################################
REG
0x41
OFFLOAD0_STATUS
ENDREG
FIELD
2024-03-20 11:53:03 +00:00
[31:0] 0x0
OFFLOAD0_STATUS
RO
Offload status register.
ENDFIELD
############################################################################################
############################################################################################
REG
0x42
OFFLOAD0_MEM_RESET
ENDREG
FIELD
2024-03-20 11:53:03 +00:00
[31:0] 0x0
OFFLOAD0_MEM_RESET
WO
Reset the memory of the offload module.
ENDFIELD
############################################################################################
############################################################################################
REG
0x44
OFFLOAD0_CDM_FIFO
ENDREG
FIELD
2024-03-20 11:53:03 +00:00
[31:0] 0xXXXXXXXX
OFFLOAD0_CDM_FIFO
WO
Offload command FIFO register. Writing to this register inserts an entry into the command FIFO
of the offload module. Writing to this register when the command FIFO is full has no effect
2024-03-20 11:53:03 +00:00
and the written entry is discarded. Reading from this register always returns 0x0.
ENDFIELD
############################################################################################
############################################################################################
REG
0x45
OFFLOAD0_SDO_FIFO
ENDREG
FIELD
2024-03-20 11:53:03 +00:00
[31:0] 0xXXXXXXXX
OFFLOAD0_SDO_FIFO
WO
Offload SDO FIFO register. Writing to this register inserts an entry into the offload SDO FIFO.
Writing to this register when the SDO FIFO is full has no effect and the written entry is
2024-03-20 11:53:03 +00:00
discarded. Reading from this register always returns 0x0.
ENDFIELD
############################################################################################
############################################################################################
REG
0x80
CFG_INFO_0
ENDREG
FIELD
[31:0] ''CFG_INFO_0''
CFG_INFO_0
RO
Configuration Info.
ENDFIELD
############################################################################################
############################################################################################
REG
0x81
CFG_INFO_1
ENDREG
FIELD
[31:0] ''CFG_INFO_1''
CFG_INFO_1
RO
Configuration Info.
ENDFIELD
############################################################################################
############################################################################################
REG
0x82
CFG_INFO_2
ENDREG
FIELD
[31:0] ''CFG_INFO_2''
CFG_INFO_2
RO
Configuration Info.
ENDFIELD
2024-03-20 11:53:03 +00:00
############################################################################################
############################################################################################
REG
0x83
CFG_INFO_3
ENDREG
2024-03-20 11:53:03 +00:00
FIELD
[31:0] ''CFG_INFO_3''
CFG_INFO_4
RO
Configuration Info.
ENDFIELD