uint32_tflash_per:1;/*program erase resume bit program erase suspend operation will be triggered when the bit is set. The bit will be cleared once the operation done.1: enable 0: disable.*/
uint32_tflash_pes:1;/*program erase suspend bit program erase suspend operation will be triggered when the bit is set. The bit will be cleared once the operation done.1: enable 0: disable.*/
uint32_tusr:1;/*User define command enable. An operation will be triggered when the bit is set. The bit will be cleared once the operation done.1: enable 0: disable.*/
uint32_tflash_hpm:1;/*Drive Flash into high performance mode. The bit will be cleared once the operation done.1: enable 0: disable.*/
uint32_tflash_res:1;/*This bit combined with reg_resandres bit releases Flash from the power-down state or high performance mode and obtains the devices ID. The bit will be cleared once the operation done.1: enable 0: disable.*/
uint32_tflash_dp:1;/*Drive Flash into power down. An operation will be triggered when the bit is set. The bit will be cleared once the operation done.1: enable 0: disable.*/
uint32_tflash_ce:1;/*Chip erase enable. Chip erase operation will be triggered when the bit is set. The bit will be cleared once the operation done.1: enable 0: disable.*/
uint32_tflash_be:1;/*Block erase enable(32KB) . Block erase operation will be triggered when the bit is set. The bit will be cleared once the operation done.1: enable 0: disable.*/
uint32_tflash_se:1;/*Sector erase enable(4KB). Sector erase operation will be triggered when the bit is set. The bit will be cleared once the operation done.1: enable 0: disable.*/
uint32_tflash_pp:1;/*Page program enable(1 byte ~256 bytes data to be programmed). Page program operation will be triggered when the bit is set. The bit will be cleared once the operation done .1: enable 0: disable.*/
uint32_tflash_wrsr:1;/*Write status register enable. Write status operation will be triggered when the bit is set. The bit will be cleared once the operation done.1: enable 0: disable.*/
uint32_tflash_rdsr:1;/*Read status register-1. Read status operation will be triggered when the bit is set. The bit will be cleared once the operation done.1: enable 0: disable.*/
uint32_tflash_rdid:1;/*Read JEDEC ID . Read ID command will be sent when the bit is set. The bit will be cleared once the operation done. 1: enable 0: disable.*/
uint32_tflash_wrdi:1;/*Write flash disable. Write disable command will be sent when the bit is set. The bit will be cleared once the operation done. 1: enable 0: disable.*/
uint32_tflash_wren:1;/*Write flash enable. Write enable command will be sent when the bit is set. The bit will be cleared once the operation done. 1: enable 0: disable.*/
uint32_tflash_read:1;/*Read flash enable. Read flash operation will be triggered when the bit is set. The bit will be cleared once the operation done. 1: enable 0: disable.*/
uint32_tsetup_time:4;/*(cycles-1) of ,prepare, phase by spi clock, this bits combined with spi_cs_setup bit.*/
uint32_thold_time:4;/*delay cycles of cs pin by spi clock, this bits combined with spi_cs_hold bit.*/
uint32_tck_out_low_mode:4;/*modify spi clock duty ratio when the value is lager than 8, the bits are combined with spi_clkcnt_N bits and spi_clkcnt_L bits.*/
uint32_tck_out_high_mode:4;/*modify spi clock duty ratio when the value is lager than 8, the bits are combined with spi_clkcnt_N bits and spi_clkcnt_H bits.*/
uint32_tmiso_delay_mode:2;/*MISO signals are delayed by spi_clk. 0: zero 1: if spi_ck_out_edge or spi_ck_i_edge is set 1 delayed by half cycle else delayed by one cycle 2: if spi_ck_out_edge or spi_ck_i_edge is set 1 delayed by one cycle else delayed by half cycle 3: delayed one cycle*/
uint32_tmiso_delay_num:3;/*MISO signals are delayed by system clock cycles*/
uint32_tmosi_delay_mode:2;/*MOSI signals are delayed by spi_clk. 0: zero 1: if spi_ck_out_edge or spi_ck_i_edge is set 1 delayed by half cycle else delayed by one cycle 2: if spi_ck_out_edge or spi_ck_i_edge is set 1 delayed by one cycle else delayed by half cycle 3: delayed one cycle*/
uint32_tmosi_delay_num:3;/*MOSI signals are delayed by system clock cycles*/
uint32_tcs_delay_mode:2;/*spi_cs signal is delayed by spi_clk . 0: zero 1: if spi_ck_out_edge or spi_ck_i_edge is set 1 delayed by half cycle else delayed by one cycle 2: if spi_ck_out_edge or spi_ck_i_edge is set 1 delayed by one cycle else delayed by half cycle 3: delayed one cycle*/
uint32_tcs_delay_num:4;/*spi_cs signal is delayed by system clock cycles*/
uint32_tfwrite_dual:1;/*In the write operations read-data phase apply 2 signals*/
uint32_tfwrite_quad:1;/*In the write operations read-data phase apply 4 signals*/
uint32_tfwrite_dio:1;/*In the write operations address phase and read-data phase apply 2 signals.*/
uint32_tfwrite_qio:1;/*In the write operations address phase and read-data phase apply 4 signals.*/
uint32_tsio:1;/*Set the bit to enable 3-line half duplex communication mosi and miso signals share the same pin. 1: enable 0: disable.*/
uint32_tusr_hold_pol:1;/*It is combined with hold bits to set the polarity of spi hold line 1: spi will be held when spi hold line is high 0: spi will be held when spi hold line is low*/
uint32_tusr_dout_hold:1;/*spi is hold at data out state the bit combined with spi_usr_hold_pol bit.*/
uint32_tusr_din_hold:1;/*spi is hold at data in state the bit combined with spi_usr_hold_pol bit.*/
uint32_tusr_dummy_hold:1;/*spi is hold at dummy state the bit combined with spi_usr_hold_pol bit.*/
uint32_tusr_addr_hold:1;/*spi is hold at address state the bit combined with spi_usr_hold_pol bit.*/
uint32_tusr_cmd_hold:1;/*spi is hold at command state the bit combined with spi_usr_hold_pol bit.*/
uint32_tusr_prep_hold:1;/*spi is hold at prepare state the bit combined with spi_usr_hold_pol bit.*/
uint32_tusr_miso_highpart:1;/*read-data phase only access to high-part of the buffer spi_w8~spi_w15. 1: enable 0: disable.*/
uint32_tusr_mosi_highpart:1;/*write-data phase only access to high-part of the buffer spi_w8~spi_w15. 1: enable 0: disable.*/
uint32_tusr_dummy_idle:1;/*spi clock is disable in dummy phase when the bit is enable.*/
uint32_tusr_mosi:1;/*This bit enable the write-data phase of an operation.*/
uint32_tusr_miso:1;/*This bit enable the read-data phase of an operation.*/
uint32_tusr_dummy:1;/*This bit enable the dummy phase of an operation.*/
uint32_tusr_addr:1;/*This bit enable the address phase of an operation.*/
uint32_tusr_command:1;/*This bit enable the command phase of an operation.*/
uint32_tslv_wr_status;/*In the slave mode this register are the status register for the master to write into. In the master mode this register are the higher 32bits in the 64 bits address condition.*/
union{
struct{
uint32_tcs0_dis:1;/*SPI CS0 pin enable, 1: disable CS0, 0: spi_cs0 signal is from/to CS0 pin*/
uint32_tcs1_dis:1;/*SPI CS1 pin enable, 1: disable CS1, 0: spi_cs1 signal is from/to CS1 pin*/
uint32_tcs2_dis:1;/*SPI CS2 pin enable, 1: disable CS2, 0: spi_cs2 signal is from/to CS2 pin*/
uint32_treserved3:2;/*reserved*/
uint32_tck_dis:1;/*1: spi clk out disable 0: spi clk out enable*/
uint32_tmaster_cs_pol:5;/*In the master mode the bits are the polarity of spi cs line the value is equivalent to spi_cs ^ spi_master_cs_pol.*/
uint32_tmaster_ck_sel:5;/*In the master mode spi cs line is enable as spi clk it is combined with spi_cs0_dis spi_cs1_dis spi_cs2_dis.*/
uint32_treserved16:13;/*reserved*/
uint32_tck_idle_edge:1;/*1: spi clk line is high when idle 0: spi clk line is low when idle*/
uint32_tcs_keep_active:1;/*spi cs line keep low when the bit is set.*/
uint32_trd_buf_done:1;/*The interrupt raw bit for the completion of read-buffer operation in the slave mode.*/
uint32_twr_buf_done:1;/*The interrupt raw bit for the completion of write-buffer operation in the slave mode.*/
uint32_trd_sta_done:1;/*The interrupt raw bit for the completion of read-status operation in the slave mode.*/
uint32_twr_sta_done:1;/*The interrupt raw bit for the completion of write-status operation in the slave mode.*/
uint32_ttrans_done:1;/*The interrupt raw bit for the completion of any operation in both the master mode and the slave mode.*/
uint32_tint_en:5;/*Interrupt enable bits for the below 5 sources*/
uint32_tcs_i_mode:2;/*In the slave mode this bits used to synchronize the input spi cs signal and eliminate spi cs jitter.*/
uint32_treserved12:5;/*reserved*/
uint32_tlast_command:3;/*In the slave mode it is the value of command.*/
uint32_tlast_state:3;/*In the slave mode it is the state of spi state machine.*/
uint32_ttrans_cnt:4;/*The operations counter in both the master mode and the slave mode. 4: read-status*/
uint32_tcmd_define:1;/*1: slave mode commands are defined in SPI_SLAVE3. 0: slave mode commands are fixed as: 1: write-status 2: write-buffer and 3: read-buffer.*/
uint32_twr_rd_sta_en:1;/*write and read status enable in the slave mode*/
uint32_twr_rd_buf_en:1;/*write and read buffer enable in the slave mode*/
uint32_trdsta_dummy_cyclelen:8;/*In the slave mode it is the length in spi_clk cycles of dummy phase for read-status operations. The register value shall be (cycle_num-1).*/
uint32_twrsta_dummy_cyclelen:8;/*In the slave mode it is the length in spi_clk cycles of dummy phase for write-status operations. The register value shall be (cycle_num-1).*/
uint32_trdbuf_dummy_cyclelen:8;/*In the slave mode it is the length in spi_clk cycles of dummy phase for read-buffer operations. The register value shall be (cycle_num-1).*/
uint32_twrbuf_dummy_cyclelen:8;/*In the slave mode it is the length in spi_clk cycles of dummy phase for write-buffer operations. The register value shall be (cycle_num-1).*/
uint32_tdio:1;/*For SPI0 SRAM DIO mode enable . SRAM DIO enable command will be send when the bit is set. The bit will be cleared once the operation done.*/
uint32_tqio:1;/*For SPI0 SRAM QIO mode enable . SRAM QIO enable command will be send when the bit is set. The bit will be cleared once the operation done.*/
uint32_treserved2:2;/*For SPI0 SRAM write enable . SRAM write operation will be triggered when the bit is set. The bit will be cleared once the operation done.*/
uint32_trst_io:1;/*For SPI0 SRAM IO mode reset enable. SRAM IO mode reset operation will be triggered when the bit is set. The bit will be cleared once the operation done*/
uint32_tusr_rd_cmd_value:16;/*For SPI0 When cache mode is enable it is the read command value of command phase for SRAM.*/
uint32_treserved16:12;/*reserved*/
uint32_tusr_rd_cmd_bitlen:4;/*For SPI0 When cache mode is enable it is the length in bits of command phase for SRAM. The register value shall be (bit_num-1).*/
uint32_tusr_wr_cmd_value:16;/*For SPI0 When cache mode is enable it is the write command value of command phase for SRAM.*/
uint32_treserved16:12;/*reserved*/
uint32_tusr_wr_cmd_bitlen:4;/*For SPI0 When cache mode is enable it is the in bits of command phase for SRAM. The register value shall be (bit_num-1).*/
uint32_tint_hold_ena:2;/*This register is for two SPI masters to share the same cs clock and data signals. The bits of one SPI are set if the other SPI is busy the SPI will be hold. 1(3): hold at ,idle, phase 2: hold at ,prepare, phase.*/