Linty-Services / test-neorv32

0 stars 0 forks source link

RULE"if" statements should always contain an "else" statement in combinational processes to avoid undesired latch inference #1

Open racodond opened 1 year ago

racodond commented 1 year ago

RULE"if" statements should always contain an "else" statement in combinational processes to avoid undesired latch inference À partir de l’adresse http://132.149.33.77:9000/project/issues?id=neorv32&open=AYXupfL4NkiE4c_cC9O3&resolved=false&rules=vhdl% 3AVHDL1036&statuses=OPEN

Cette règle n'est pas cohérente le process est synchrone:

image

racodond commented 1 year ago

La définition du type de process (clocked ou combinational) se fait à partir des horloges détectées par la synthèse de Yosys. Ici, le fichier ne doit pas être synthétisé par Yosys. Aucune horloge n'est détecté. Du coup, le process n'est ps considéré comme clocké. A voir ensemble comment on gère ces cas.

LeFl0w commented 1 year ago

je pense qu'il faudrait créer une règle genre code non synthétisé. Avec le parseur, identifier ces partie generate if sur la base de la valeurs du booleen non utilisées dans le design Ensuite masquer sur demande (ou par défault systématiquement) les issues dans cette partie de code et sous sonarqube le griser dans l'affichage des couleurs (en mode comme du commentaire).