Fixed-Point Designer
Modéliser et optimiser vos algorithmes virgule fixe et virgule flottante
Vous avez des questions ? Contactez l’équipe commerciale.
Vous avez des questions ? Contactez l’équipe commerciale.
Fixed-Point Designer™ offre des types de données et des outils pour l'optimisation et l'implémentation d’algorithmes virgule fixe et virgule flottante sur hardware embarqué. Il comprend des types de données virgule fixe et virgule flottante, ainsi que des paramètres numériques spécifiques à la cible. Avec Fixed-Point Designer, vous pouvez réaliser une simulation en virgule fixe exacte au bit près tout en tenant compte de la cible. Vous pouvez alors tester et déboguer les effets de la quantification comme les débordements et les pertes de précision avant d'implémenter le design sur du hardware.
Fixed-Point Designer propose des outils et applications permettant d'analyser les algorithmes double précision et de les convertir en algorithmes virgule flottante de précision réduite ou virgule fixe. Des outils d'optimisation vous permettent de sélectionner des types de données pour répondre aux exigences en précision numérique et aux contraintes du hardware cible. Pour une implémentation efficace, vous pouvez remplacer les constructions de design exigeant des calculs complexes par des patterns optimaux pour du hardware, comme des lookup tables compressées.
Vous pouvez générer du code C et HDL de production directement à partir de vos modèles en virgule flottante ou virgule fixe.
Spécifiez les propriétés virgule fixe de votre design en fonction de votre application comme la longueur des mots et la mise à l'échelle en spécifiant l’emplacement du point binaire ainsi que la pente et le biais. Contrôlez les détails tels que les modes d'arrondi et de débordement.
Émulez le comportement du hardware cible pour les nombres à virgule flottante dénormalisés, comme le flush-to-zero, dans la simulation et la génération de code. Simulez des données en virgule flottante de précision limitée avec le type de données demi-précision fp16 dans MATLAB® et Simulink®.
Collectez des données de simulation et des statistiques avec une instrumentation automatique à l'échelle du modèle. Collectez des données de dynamique pour explorer et analyser vos designs. Utilisez les visualisations pour optimiser votre design et utiliser de manière efficace les ressources hardware.
Dérivez la dynamique des signaux en vous basant sur une analyse mathématique de votre design et déterminez les pires dynamiques ou cas extrêmes sans avoir à créer de bancs d'essai de simulation exhaustifs. L'utilisation de dynamiques dérivées permet de vous assurer que votre design empêche ou gère tous les cas possibles de débordement.
Explorez différents types de données virgule fixe et leurs effets de quantification sur le comportement numérique de votre système avec un processus guidé. Observez la plage dynamique des variables utilisées dans votre design et assurez-vous que l’algorithme se comporte de façon cohérente dans les représentations en virgule flottante et en virgule fixe après conversion.
Convertissez automatiquement un design double précision en design simple précision, et analysez les effets de la représentation en virgule flottante de précision limitée et de la quantification en simple précision.
Itérez automatiquement sur différentes configurations en virgule fixe pour choisir les types de données hétérogènes optimaux tout en respectant les contraintes de tolérance sur le comportement numérique de votre système. L'optimisation a pour but de minimiser la largeur binaire totale en utilisant des types de données virgule fixe pour un design efficace.
Approximez des fonctions mathématiques complexes (comme sqrt et exp) ou des sous-systèmes complexes avec une lookup table optimale. Compressez les lookup tables existantes pour réduire l'utilisation de la mémoire en optimisant les points de données et les types de données.
Assurez une conformité au bit près sur l'ensemble du processus de Model-Based Design, de la simulation à la génération de code, y compris pour l'accélération et les simulations Processor-in-the-loop et Software-in-the-loop. Analysez et vérifiez les algorithmes virgule fixe d'après des représentations exactes au bit près. Générez du code efficace à partir de designs de précision réduite, y compris ceux incluant des types de données demi-précision.
Accédez à une bibliothèque virgule fixe HDL contenant des blocs Simulink qui modélisent des design patterns pour les systèmes d'équations linéaires et les opérations matricielles principales, comme la décomposition QR, pour une implémentation hardware efficace sur FPGA. Générez du code HDL pour les designs qui intègrent ces blocs en utilisant HDL Coder™.
Identifiez, tracez et déboguez rapidement les sources de débordement, les pertes de précision et les dynamiques ou précisions inutiles, et comparez votre design au comportement idéal en virgule flottante. La conformité au bit près de votre modèle et de votre code maximise de nombreux avantages du Model-Based Design, vous permettant de détecter les erreurs très tôt dans le processus.
Générez des valeurs à virgule fixe et à virgule flottante numériquement riches, comme les valeurs proches des limites et les nombres dénormalisés, pour tester les cas extrêmes de vos algorithmes et en assurer la cohérence numérique. Générez des combinaisons de signaux de dimensions et de complexités variables, comprenant des données de types entier, virgule flottante ou virgule fixe.