Sujet Conception d'un synthétiseur virtuel analogique (VA)
- 23 réponses
- 7 participants
- 953 vues
- 9 followers
François-Arnaud
51
Posteur·euse AFfranchi·e
Membre depuis 9 ans
Sujet de la discussion Posté le 17/07/2018 à 16:03:34Conception d'un synthétiseur virtuel analogique (VA)
Bonjour tout le monde ! Je suis musicien sur différents types d'instruments (synthétiseurs analogiques : modulaires, semi-modulaires, synthétiseur virtuel analogiques et numériques, sampler, etc...) et également étudiant en étude du numérique et d'électronique. Je suis donc passionné par la "fusion" du domaine de la musique avec la science et la technologie. Je suis titulaire d'un BTS Systèmes Numériques option Electronique et Communication et celui-ci m'a permis de participer à un projet qui m'a vraiment plût et intéressé : une table de mixage automatisée avec effets, bref bref bref ! Et j'ai donc accomplit ce projet grâce à une carte et au langage FPGA. Je suis donc très tenté de concevoir mon propre synthétiseur virtuel analogique (synthétiseur numérique virtuel qui simule le fonctionnement d'un synthétiseur analogique) qui contiendrait la génération de différentes formes d'ondes, l'application de différents types de filtres et d'oscillateurs à basses fréquences. Mais le problème n'est pas de savoir où me diriger, mais plutôt de savoir si justement je me dirige vers la bonne direction. Je sais pas comment fonctionnent et comment sont programmés ces synthétiseurs, chez les fabricants, appart pour les effets, ils utilisent des VSP (Virtual Signal Processing si je ne me trompe pas). Le FPGA me semble être un excellent moyen pour ce projet, mais son langage est vachement complexe, et assez coûteux.
Si vous avez des informations à propos de ce sujet, je vous écouterai volontier et je n'attends que ça !
Bonne soirée !!
Si vous avez des informations à propos de ce sujet, je vous écouterai volontier et je n'attends que ça !
Bonne soirée !!
Jimbass
11603
Drogué·e à l’AFéine
Membre depuis 17 ans
11 Posté le 18/07/2018 à 01:25:28
Le terme "toolchain" représente l'ensemble des outils de développement.
En logiciel, il s'agit essentiellement d'éditeur de texte, de compilateur, d'assembleur, de linker ... le tout parfois rassemblé dans un IDE. Le plus souvent ca tourne autour des outils libres GCC (GNU Compiler Collection) et binutils associés.
En matériel, il s'agira de structurer ton design, d'en faire la synthèse*, le placement et le routage, et enfin de le charger sur la carte. Chaque fournisseur de FPGA a ses propres outils, car au moins le placement et le routage sont spécifiques de la puce utilisée.
* du coup, il peut y avoir confusion entre la synthèse sonore, l'objet de ton projet, et la synthèse logique, qui transforme le HDL en netlist.
En logiciel, il s'agit essentiellement d'éditeur de texte, de compilateur, d'assembleur, de linker ... le tout parfois rassemblé dans un IDE. Le plus souvent ca tourne autour des outils libres GCC (GNU Compiler Collection) et binutils associés.
En matériel, il s'agira de structurer ton design, d'en faire la synthèse*, le placement et le routage, et enfin de le charger sur la carte. Chaque fournisseur de FPGA a ses propres outils, car au moins le placement et le routage sont spécifiques de la puce utilisée.
* du coup, il peut y avoir confusion entre la synthèse sonore, l'objet de ton projet, et la synthèse logique, qui transforme le HDL en netlist.
Musikmesser 2013 - Bullshit Gourous - Tocxic Instruments - festivals Foud'Rock, Metal Sphère et la Tour met les Watts
EraTom
2282
AFicionado·a
Membre depuis 13 ans
12 Posté le 18/07/2018 à 01:33:33
x
Hors sujet :Coder et optimiser son code sur un DSP n'est pas follement plus simple que de câbler système numérique dans un FPGA.
J'ai le souvenir d'avoir implémenté des FFT temps réel bien plus facilement avec un FPGA qu'avec un DSP.
François-Arnaud
51
Posteur·euse AFfranchi·e
Membre depuis 9 ans
13 Posté le 18/07/2018 à 01:49:53
Donc pour résumer un peu tout ça, vous me conseillez de me diriger plus vers quoi ? Pour avoir une base du fonctionnement, et pouvoir par la suite m'améliorer ?
Jimbass
11603
Drogué·e à l’AFéine
Membre depuis 17 ans
14 Posté le 18/07/2018 à 01:58:00
x
Hors sujet :C'est pas faux. Surtout depuis que les FPGA ont des modules DSP pré-câblés.
Avec un Zynq ou un Cyclone SoC, tu pourras t'adonner à la fois aux affres du soft et aux perversions du hard.
Musikmesser 2013 - Bullshit Gourous - Tocxic Instruments - festivals Foud'Rock, Metal Sphère et la Tour met les Watts
[ Dernière édition du message le 18/07/2018 à 01:59:55 ]
François-Arnaud
51
Posteur·euse AFfranchi·e
Membre depuis 9 ans
15 Posté le 18/07/2018 à 03:34:55
Donc vous me conseillez bien de partir vers du FPGA ?
François-Arnaud
51
Posteur·euse AFfranchi·e
Membre depuis 9 ans
16 Posté le 18/07/2018 à 05:38:56
J'ai regardé quelques conférences d'ingénieurs en université, qui font du DSP en C et C++, qu'en pensez-vous ?
Jimbass
11603
Drogué·e à l’AFéine
Membre depuis 17 ans
17 Posté le 18/07/2018 à 10:55:14
Citation de François-Arnaud :
Donc vous me conseillez bien de partir vers du FPGA ?
Ca dépend complètement de ce que tu veux faire.
D'un point de vue purement technique, il faut faire un truc vraiment compliqué en audio pour avoir besoin de FPGA. On peut déjà faire beaucoup de choses en logiciel, avec un CPU ou un DSP adapté.
D'un point de vue plus personnel, si c'est une compétence que tu souhaites développer, fonce.
L'idée que j'ai en te suggérant des puces FPGA+CPU, c'est de pouvoir développer tes compétences hardware d'une part, software d'autre part, et surtout l'interaction entre les deux.
Citation de François-Arnaud :
J'ai regardé quelques conférences d'ingénieurs en université, qui font du DSP en C et C++, qu'en pensez-vous ?
Sans savoir de quelles conférences il s'agit, je n'en pense pas grand-chose.
Après j'éviterais le C++ pour du DSP, le C permet de mieux contrôler ses structures de données et optimiser la façon dont la mémoire est utilisée. Il est également courant, si des performances élevées sont requises, de coder une partie d'un algorithme en assembleur.
Musikmesser 2013 - Bullshit Gourous - Tocxic Instruments - festivals Foud'Rock, Metal Sphère et la Tour met les Watts
EraTom
2282
AFicionado·a
Membre depuis 13 ans
18 Posté le 18/07/2018 à 20:38:16
Un truc intéressant dans un premier temps mais assez pointu techniquement c'est d'utiliser la partie FPGA comme un interface numérique entre la partie DSP et les autres périphériques du synthétiseur.
Par exemple, une machine à états capable de pré traiter les messages midi pour les placer dispo dans une mémoire partagée avec le DSP.
Ou encore implémenter une IP qui sert d'interface UART ou USB.
Par exemple, une machine à états capable de pré traiter les messages midi pour les placer dispo dans une mémoire partagée avec le DSP.
Ou encore implémenter une IP qui sert d'interface UART ou USB.
static volatile
1793
AFicionado·a
Membre depuis 7 ans
19 Posté le 21/07/2018 à 15:41:21
Tiens, en ce moment je joue avec ça pour m'éduquer: miniZED.
Ça coûte autour de 80€, avec une licence (verrouillée à la carte) pour la toolchain (qui fonctionne aussi sous linux).
C'est intéressant car certaines I/O ne sont accessibles qu'à travers le FPGA donc même pour un projet principalement software on se trouve à faire un minimum de hardware.
Ça se prêterait bien aux suggestions d'EraTom.
Ça coûte autour de 80€, avec une licence (verrouillée à la carte) pour la toolchain (qui fonctionne aussi sous linux).
C'est intéressant car certaines I/O ne sont accessibles qu'à travers le FPGA donc même pour un projet principalement software on se trouve à faire un minimum de hardware.
Ça se prêterait bien aux suggestions d'EraTom.
Resistance is not futile... it's voltage divided by current
Jimbass
11603
Drogué·e à l’AFéine
Membre depuis 17 ans
20 Posté le 21/07/2018 à 16:20:33
C'est une petite carte bien sympa, avec juste ce qu'il faut d'IO et un prix tout à fait abordable.
Musikmesser 2013 - Bullshit Gourous - Tocxic Instruments - festivals Foud'Rock, Metal Sphère et la Tour met les Watts
- < Liste des sujets
- Charte