Mon problème est le suivant :
je doit réaliser un interface de communication entre deux blocs :un décodec et un processus .
1)le décodec (audio):d'un part il reçoit les informations sous format analogique et les transformer en une format numérique pour les envoyer au processus qui va les traiter .et d'autre part il reçoit des données numérique venant du processus pour les transmettre à la sortie analogique
2)un processus qui traite les données venant du codec puis les renvoyer au codec
le travaille que je doit réaliser consiste à faire un programme en VHDL pour assurer la communication entre le codec et le processus ,avec l'utilisation de Wishbone bus .
d'abords pour le codec je doit configurer tout ses registres pour une fonctionnement choisie (choix : du gain ,type d'entré et de sortie,fréquence de l'horloge,...... )
un cycle de transfert est constitué de 256 coup d'horloge BCLK
lors de cette période le codec ne doit pas lire les données venant de processus .il doit juste lire les données de configurations des registres ses données sont stockés sur un bloc de 16 bites (16 coup d'horloge) dans le première bloc (16 bits) on trouve le 1 ere bite pour indiqué soit une opération
de lire(0) ou d écriture (1) dans le deuxième et le troisième la dresse de codec (00 dans ce cas puisque il y a qu'un seul codec ) puis dans les 8 bits qui suit le numéro de registre et les 5 bites qui restes ne sont pas utilisées .
dans le deuxième bloc de 16 bites on trouve les données à écrire dans le registre. il y a que les 8 premières bites qui sont valides les 8 bites qui restent ne sont pas valides
le reste des slot time ne sont pas utilisée lors de cette période
pour faire .mon schémas bloc contient :
1)un multiplexeur pour la sélection des registres et les données à écrire sur le registres
2)un registre à décalage de 16 bits pour transférer les données bits par bits au codec
3)un compteur (4 bits ) pour compter BCLK
mais j'ai un problème de synchroniser tout ça pour un bon fonctionnements et aussi je ne sais pas bien utiliser les signaux de wishbone pour gérer la communication entre le codec et le processus .
j'attends vous propositions .
-----