Processes | |
| processread | ( Clk ) |
| processerase | ( Clk ) |
| processProgram | ( Clk ) |
| MuxMosi_int | ( wrstate ) |
| MuxMosi | ( CLK ) |
| MuxCsB | ( Clk ) |
| PROCESS_4 | ( clk ) |
Components | |
| SpiCsBflop | <Entity SpiCsBflop> |
| oneshot | <Entity oneshot> |
| writeSpiFIFO | |
Constants | |
| AddrWidth | integer := 32 |
| SectorSize | integer := 65536 |
| SizeSector | std_logic_vector ( 31 downto 0 ) := X " 00010000 " |
| SubSectorSize | integer := 4096 |
| SizeSubSector | std_logic_vector ( 31 downto 0 ) := X " 00001000 " |
| NumberofSectors | std_logic_vector ( 8 downto 0 ) := " 000000000 " |
| PageSize | std_logic_vector ( 31 downto 0 ) := X " 00000100 " |
| NumberofPages | std_logic_vector ( 16 downto 0 ) := " 10000000000000000 " |
| AddrStart32 | std_logic_vector ( 31 downto 0 ) := X " 00000000 " |
| AddrEnd32 | std_logic_vector ( 31 downto 0 ) := X " 01FFFFFF " |
| Idcode25NQ256 | std_logic_vector ( 23 downto 0 ) := X " 20BB19 " |
| CmdREAD24 | std_logic_vector ( 7 downto 0 ) := X " 03 " |
| CmdFASTREAD | std_logic_vector ( 7 downto 0 ) := X " 0B " |
| CmdREAD32 | std_logic_vector ( 7 downto 0 ) := X " 13 " |
| CmdRDID | std_logic_vector ( 7 downto 0 ) := X " 9F " |
| CmdRDFlashPara | std_logic_vector ( 7 downto 0 ) := X " 5A " |
| CmdRDFR24Quad | std_logic_vector ( 7 downto 0 ) := X " 0C " |
| CmdFLAGStatus | std_logic_vector ( 7 downto 0 ) := X " 70 " |
| CmdStatus | std_logic_vector ( 7 downto 0 ) := X " 05 " |
| CmdWE | std_logic_vector ( 7 downto 0 ) := X " 06 " |
| CmdSE24 | std_logic_vector ( 7 downto 0 ) := X " D8 " |
| CmdSE32 | std_logic_vector ( 7 downto 0 ) := X " DC " |
| CmdSSE24 | std_logic_vector ( 7 downto 0 ) := X " 20 " |
| CmdSSE32 | std_logic_vector ( 7 downto 0 ) := X " 21 " |
| CmdPP24 | std_logic_vector ( 7 downto 0 ) := X " 02 " |
| CmdPP32 | std_logic_vector ( 7 downto 0 ) := X " 12 " |
| CmdPP24Quad | std_logic_vector ( 7 downto 0 ) := X " 32 " |
| CmdPP32Quad | std_logic_vector ( 7 downto 0 ) := X " 34 " |
| Cmd4BMode | std_logic_vector ( 7 downto 0 ) := X " B7 " |
| CmdExit4BMode | std_logic_vector ( 7 downto 0 ) := X " E9 " |
Types | |
| erstates | is ( S_ER_IDLE , S_S4BMode_ASSCS1 , S_S4BMode_WRCMD , S_S4BMode_ASSCS2 , S_S4BMode_WR4BADDR , S_ER_ASSCS1 , S_ER_ASSCS2 , S_ER_ASSCS3 , S_ER_WRCMD , S_ER_ERASECMD , S_ER_RDSTAT ) |
| wrstates | is ( S_WR_IDLE , S_WR_ASSCS1 , S_WR_WRCMD , S_WR_S4BMode_ASSCS1 , S_WR_S4BMode_WRCMD , S_WR_S4BMode_ASSCS2 , S_WR_S4BMode_WR4BADDR , S_WR_ASSCS2 , S_WR_PROGRAM , S_WR_DATA , S_WR_PPDONE , S_WR_PPDONEPRE , S_WR_PPDONESTATUS , S_WR_PPDONE_WAIT , S_EXIT4BMode_ASSCS1 , S_EXIT4BMODE ) |
| rdstates | is ( S_RD_IDLE , S_RD_S4BMode_ASSCS1 , S_RD_S4BMode_WRCMD , S_RD_S4BMode_ASSCS2 , S_RD_S4BMode_WR4BADDR , S_RD_CS1 , S_RD_RDCMD , S_RD_EXIT4BMode_ASSCS1 , S_RD_EXIT4BMode ) |
Signals | |
| CmdIndex | std_logic_vector ( 3 downto 0 ) := " 0001 " |
| CmdSelect | std_logic_vector ( 7 downto 0 ) := x " FF " |
| AddSelect | std_logic_vector ( 31 downto 0 ) := x " 00000000 " |
| cmdcounter32 | std_logic_vector ( 5 downto 0 ) := " 100111 " |
| cmdreg32 | std_logic_vector ( 39 downto 0 ) := X " 1111111111 " |
| data_valid_cntr | std_logic_vector ( 2 downto 0 ) := " 000 " |
| rddata | std_logic_vector ( 1 downto 0 ) := " 00 " |
| wrdata_count | std_logic_vector ( 2 downto 0 ) := " 000 " |
| spi_wrdata | std_logic_vector ( 31 downto 0 ) := X " 00000000 " |
| page_count | std_logic_vector ( 17 downto 0 ) := " 111111111111111111 " |
| Current_Addr | std_logic_vector ( 31 downto 0 ) := X " 00000000 " |
| StatusDataValid | std_logic := ' 0 ' |
| spi_status | std_logic_vector ( 1 downto 0 ) := " 11 " |
| write_done | std_logic := ' 0 ' |
| write_nwords_limit | unsigned ( 13 downto 0 ) := ( others = > ' 0 ' ) |
| er_sector_count | std_logic_vector ( 13 downto 0 ) := " 00000000000001 " |
| er_current_sector_addr | std_logic_vector ( 31 downto 0 ) := X " 00000000 " |
| er_SpiCsB | std_logic |
| erase_start | std_logic := ' 0 ' |
| er_data_valid_cntr | std_logic_vector ( 2 downto 0 ) := " 000 " |
| er_cmdcounter32 | std_logic_vector ( 5 downto 0 ) := " 111111 " |
| er_rddata | std_logic_vector ( 1 downto 0 ) := " 00 " |
| er_cmdreg32 | std_logic_vector ( 39 downto 0 ) := X " 1111111111 " |
| er_status | std_logic_vector ( 1 downto 0 ) := " 11 " |
| erase_inprogress | std_logic := ' 0 ' |
| erase_done | std_logic := ' 0 ' |
| rd_SpiCsB | std_logic |
| read_start | std_logic := ' 0 ' |
| read_done | std_logic := ' 1 ' |
| rd_data_valid | std_logic := ' 0 ' |
| rd_data_valid_cntr | std_logic_vector ( 3 downto 0 ) := " 0000 " |
| rd_current_sector_addr | std_logic_vector ( 31 downto 0 ) := X " 00000000 " |
| rd_nword_limit | std_logic_vector ( 31 downto 0 ) := x " 00000000 " |
| rd_nword_cntr | std_logic_vector ( 31 downto 0 ) := x " 00000000 " |
| rd_nword_cntr_dly | std_logic_vector ( 31 downto 0 ) := x " 00000000 " |
| rd_data_wait_clk | integer := 48 |
| rd_cmdcounter32 | std_logic_vector ( 5 downto 0 ) := " 111111 " |
| rd_rddata | std_logic_vector ( 15 downto 0 ) := X " 0000 " |
| rd_rddata_all | std_logic_vector ( 15 downto 0 ) := X " 0000 " |
| rd_cmdreg32 | std_logic_vector ( 39 downto 0 ) := X " 1111111111 " |
| read_inprogress | std_logic := ' 0 ' |
| SpiMiso | std_logic |
| SpiMosi | std_logic |
| SpiCsB | std_logic := ' 1 ' |
| SpiCsB_N | std_logic |
| SpiCsB_FFDin | std_logic := ' 1 ' |
| di_out | std_logic_vector ( 3 downto 0 ) := X " 0 " |
| do_in | std_logic_vector ( 3 downto 0 ) := ( others = > ' 0 ' ) |
| dopin_ts | std_logic_vector ( 3 downto 0 ) := " 1110 " |
| SpiMosi_int | std_logic |
| fifo_rden | std_logic := ' 0 ' |
| fifo_empty | std_logic := ' 0 ' |
| fifo_full | std_logic := ' 0 ' |
| fifo_almostfull | std_logic := ' 0 ' |
| fifo_almostempty | std_logic := ' 0 ' |
| fifodout | std_logic_vector ( 63 downto 0 ) := X " 0000000000000000 " |
| fifo_unconned | std_logic_vector ( 15 downto 0 ) := X " 0000 " |
| reset_design | std_logic := ' 0 ' |
| wrerr | std_logic := ' 0 ' |
| rderr | std_logic := ' 0 ' |
| synced_fifo_almostfull | std_logic_vector ( 1 downto 0 ) := " 00 " |
| synced_read | std_logic_vector ( 1 downto 0 ) := " 00 " |
| synced_erase | std_logic_vector ( 1 downto 0 ) := " 00 " |
| erstate | erstates := S_ER_IDLE |
| wrstate | wrstates := S_WR_IDLE |
| rdstate | rdstates := S_RD_IDLE |
Attributes | |
| mark_debug | string |
| dont_touch | string |
| keep | string |
| shreg_extract | string |
| async_reg | string |
| keep | synced_fifo_almostfull : signal is " true " |
| async_reg | synced_fifo_almostfull : signal is " true " |
| shreg_extract | synced_fifo_almostfull : signal is " no " |
| keep | synced_read : signal is " true " |
| async_reg | synced_read : signal is " true " |
| shreg_extract | synced_read : signal is " no " |
| keep | synced_erase : signal is " true " |
| async_reg | synced_erase : signal is " true " |
| shreg_extract | synced_erase : signal is " no " |
Instantiations | |
| startupe3_inst | startupe3 |
| negedgecs_flop | SpiCsBflop <Entity SpiCsBflop> |
| oneshot_inst_rd | oneshot <Entity oneshot> |
| oneshot_inst_er | oneshot <Entity oneshot> |
| writefifo_i | writespififo |
1.8.5