tillitis-key/hw/application_fpga/core
Daniel Jobson 690bb53267
Introduce new bit to mark ROM as non-executable
This is dynamically set by hw in system_mode_ctrl. ROM will reset to
executable, but will be marked as non-executable as soon as we are no
longer executing in ROM, like system_mode.

ROM will be marked as executable again, if function calls are made to
either `syscall_addr_reg` or `blake2s_addr_reg`. Set reset value of
`blake2s_addr_reg` to an illegal address, halting the CPU if it is
called unset.

The blake2s function is 4-byte aligned, to ensure the cpu_addr is is
aligned with the address in the register.

Co-authored-by: Mikael Ågren <mikael@tillitis.se>
2024-12-09 09:36:57 +01:00
..
clk_reset_gen FPGA: Format verilog code 2024-10-22 12:04:19 +02:00
fw_ram Doc: fix typo of system mode in readme 2024-11-13 14:13:02 +01:00
picorv32 FPGA: Ignore warnings about blocking assignment in clocked processes 2024-06-17 15:37:13 +02:00
ram Doc: move implementation details of RAM scrambling to RAM core 2024-11-20 15:48:49 +01:00
rom Fix typo 2024-11-14 16:35:50 +01:00
timer tb: make timer core testbench selftesting 2024-11-27 08:10:15 +01:00
tk1 Introduce new bit to mark ROM as non-executable 2024-12-09 09:36:57 +01:00
touch_sense FPGA: Format verilog code 2024-10-22 12:04:19 +02:00
trng Change "rosc" references to "trng" 2024-11-14 16:35:51 +01:00
uart fpga: remove the API for configuring the UART core 2024-11-26 15:24:12 +01:00
uds Harmonize the naming of firmware and app mode. 2024-11-12 15:13:59 +01:00