2009-11-12 4 views
3

J'utilise un simulateur ASIC (vcs) qui prend un tas de langages différents (Verilog, VHDL, Vera, C et Tcl dans notre cas) et les compile tous dans un exécutable C.Quels sont les moyens de déboguer un core dump?

Ce qui est génial, jusqu'à ce que le noyau vide avec une trace cryptique. Quelle est la meilleure façon d'aborder le débogage?

Répondre

1

Si vous avez déjà regardé la trace de la pile, je suppose que vous avez glané la plupart des informations que vous pouvez trouver dans le fichier core. Surtout si vous n'êtes pas familier avec la façon dont le simulateur est mis en œuvre, et il ne semble pas que vous êtes. Je dirais que l'outil est bogué, et que vous devriez tenir le fournisseur responsable. Le noyau de vidage n'est jamais une bonne réponse, même s'il y a un problème avec l'entrée que vous avez donnée. Cependant, si vous souhaitez essayer d'analyser le problème plus en détail, nous vous suggérons de commencer par une version plus simple de votre ASIC qui fonctionne, puis de faire des changements incrémentiels, en vous assurant que cela fonctionne toujours après chaque modification. . De cette façon, vous pouvez affiner la partie spécifique de votre système qui cause le problème, et cela peut vous permettre de le réparer ou de déposer un rapport de bogue plus spécifique avec votre fournisseur. Bien sûr, cela suppose que vous pouvez revenir à quelque chose qui fonctionne, mais je vais espérer que vous avez testé les choses au moins quelques fois au cours du processus de conception, et que vous avez une sorte de contrôle de version (ou au moins des sauvegardes).

+0

Voilà à peu près comment nous le traitons maintenant. Sauf avec plusieurs concepteurs qui vérifient, même avec des vérifications de santé mentale, les choses se glissent à travers. À l'heure actuelle, le processus consiste à utiliser le contrôle de version pour se synchroniser avec le moment où il a fonctionné, puis à synchroniser les dates intermédiaires jusqu'à ce qu'elles soient restreintes à un jour spécifique et à un ensemble spécifique de fichiers. Ce processus est vraiment nul quand chaque simulation dure plusieurs heures. – SDGator

Questions connexes