[Cryptech Core] alpha schematics
Pavel Shatov
meisterpaul1 at yandex.ru
Tue Dec 15 13:50:35 UTC 2015
On 15.12.2015 5:32, Peter Stuge wrote:
>
> Page 13 says "PROM is write-protected by default, to disable write
> protection (..), jumper must be inserted" - but FPGA_PROM_W_N can
> also drive /W high to disable SPI flash write-protect.
Good catch, thank you! The signal FPGA_PROM_W_N itself is not supposed
to be connected anywhere. As far as I remember, I labeled it to just
have a sane name for that net, not just $net_1234. Maybe it will be
better to make net name in this place invisible and also delete part of
wire extending to the left (picture attached).
> Analog switches aren't strictly neccessary for the unidirectional
> signals, but also don't cause any problem as long as their bandwidth
> is high enough for the digital switching.
I'm also afraid, that "Analog switch to boot FPGA from config memory, or
from ARM" is misleading.
FPGA has built-in config memory, that is volatile. There must be some
external non-volatile memory, where the bitstream will be stored. Every
time FPGA is powered up, config bitstream must be loaded from that
external memory into FPGA's internal volatile latches. Now FPGA can try
do this itself automatically (master mode), or it can just sit and wait
for someone to send it the bitstream (slave mode).
Novena has the second variant. The bitstream is stored on the SD card,
when we run configure script i.MX processor reads the bitsream from disk
and directly sends it to the FPGA to configure it.
If I understand everything correctly, we want Alpha board to implement
the first variant. The FPGA will automatically load bitstream from
config memory. STM32 processor will not be able to directly configure
FPGA anymore, it will only be able to re-write config memory with new
bitstream (if allowed by insertion of jumper) and tell FPGA to re-load
bitstream from config memory. Is this what we actually want?
Given that the above assumption is valid, the problem is that we have
one SPI slave (config memory) and two SPI masters (FPGA and STM32). I
think, somewhat better solution than analog switch will be to use
3-stateable buffer, such as 74AHC244. It has a pair of 4-bit buses,
exactly what we need for two SPI interfaces.
--
With best regards,
Pavel Shatov
-------------- next part --------------
A non-text attachment was scrubbed...
Name: fpga_config_mem.png
Type: image/png
Size: 36305 bytes
Desc: not available
URL: <https://lists.cryptech.is/archives/core/attachments/20151215/6a22a052/attachment-0001.png>
More information about the Core
mailing list