Close

Vivado goes on the naughty step

A project log for Merlin

68000 Retro Super Computer

matthew-pearceMatthew Pearce 11/03/2021 at 09:540 Comments

Everything fine, then the SD Card stops working. For no apparent reason. Luckily because I have a 100% fpga system I can track everything that goes on using the Vivado debugger. 

Here's a guide to debugging:

https://www.xilinx.com/support/documentation/sw_manuals/xilinx2019_2/ug936-vivado-tutorial-programming-debugging.pdf

Anyway - turns out the vivado tools had optimised my SD card interfaces away.... In this case you put Vivado on the naughty step and tell it to leave your code alone.

attribute dont_touch : string; 
attribute dont_touch of sdCardDataOut : signal is "true";
attribute dont_touch of sdCardDataIn : signal is "true";
attribute dont_touch of sdAddress : signal is "true";

and we are back in business!

Sometimes you need to remember it's not the code but the tool! 

Discussions