Une après-midi passée à tenter de débugger l'initialisation au moment de l'élaboration d'un bloc de mémoire sur FPGA à partir d'un fichier, avant de me rendre compte que l'outil de synthé d'Altera
ignore silencieusement tout ce qui a trait aux fichiers et remplace les données lues par des zéros. Puis tout content il m'annonce qu'il a optimisé le circuit en 3 portes logiques vu que ma mémoire renvoie tout le temps zéro.
Donc je vire ma belle initialisation en VHDL portable, pour mettre à la place des attributs propriétaires, j'écris un script awk pour recoder tous mes fichiers dans le format à la con d'Altera, et... là le synthé me dit : eh, tu vas être fier de moi, j'ai vu que tu n'écris jamais dans ta mémoire, alors j'ai dégagé le code mort.
En ajoutant des signaux d'écriture bidon venant de l'extérieur, ça le fait, il prend enfin en compte mon initialisation : cool, il n'y a plus qu'à router ces signaux sur quelques pins d'entrée soudés à la masse et ça sera bon.
Et ces gusses ont été rachetés par Intel.