Lab 5 : Banc de Test pour Corrélateur Radar

Lab 5 : Banc de Test pour Corrélateur Radar

RAPPEL : Principe de Fonctionnement du Radar


SOURCES

Lab4_banc_test.zip


Le Produit de Corrélation

Le produit de corrélation consiste à évaluer la similitude de deux signaux en mémoire :

  • Le signal de référence, dont les données correspondent au signal envoyé
  • Le signal reçu : le contenu de la mémoire est remis à jour à chaque période d’échantillonage

Entre chaque acquistion d’un nouvel échantillon, on calcule le produit de corrélation, selon la formule :

correlation=i=0nref(i)rec(i) correlation=\sum_{i=0}^{n}ref(i)*rec(i)

cliquer sur la figure ci-dessous pour observer la corrélation de deux signaux carrés :


Présentation du Banc de Test

L’objectif du labo est d’étudier une architecture de corrélateur pour signal radar.

banc_de_test.svg

Le banc de test associe un stimulateur (déjà décrit) avec le corrélateur.

Le stimulateur permet de générer un signal de type chirp (explications ici) envoyé vers une cible (signal de référence, 44 échantillons).

A la suite tout échantillon reçu est stocké dans la pile de réception et le produit de corrélation est effectué à chaque acquisition.

Le stimulateur fera en sorte d’envoyer le même signal chirp pour simuler la réception dans un environnement no bruité, puis ce même signal dans un environnement bruité.

Ce fonctionnement sera répété après avoir modifié un paramètre du signal chirp.

chronogramme_banc_de_test.svg

En considérant une architecture de calcul de type série (que nous allons envisager), il faudra donc n coups d’horloges pour réaliser le calcul.
D’ores et déjà il faut avoir conscience du fait que les calculs se font à une fréquence au moins n fois plus rapide que la fréquence de réception des échantillons.
Le corrélateur a un fonctionnement synchrone à clk (horloge rapide) et aura pour entrée clke permettant de savoir quand un nouvel échantillon est disponible.

chronogramme_correlateur.svg

Architecture du Corrélateur

correlateur.svg

correlateur_serie.svg

Remarque sur les tailles des vecteurs :

  • Les échantillons reçus par le corrélateur sont codés au format virgule fixe 1.7
  • La mutliplication double le format : 1.7 –> 2.14. Les 14 bits de la partie fractionnaire se retrouvent dans toute la suite du calcul.
  • En supposant que les deux piles contiennent 44 valeurs à 1, le résultat du produit de corrélation sera 44. Cela nécessite 7 bits pour le codage de la partie entière.

Les composants constitutifs du corrélateur à décrire sont :

Le multiplieur

Multiplie deux vecteurs de 8 bits pour fournir un résultat sur 16 bits. Le produit de deux signed est défini dans la bibliothèque numeric_std

L’additionneur

Additionne deux vecteurs de 21 bits pour fournir un résultat sur 21 bits.

La pile

Contient N données de 8 bits (N paramètre générique).
Lors de l’instanciation, les piles de référence et de réception devront avoir une taille 44.

  • raz=‘1’ –> tous les échantillons à 0 (synchrone)
  • ld =‘1’ –> chargement synchrone : La donnée présente à l’entrée de la pile est chargée en haut de la pile. Tous les échantillons sont décalés d’un cran vers le bas en écrasant le plus vieux;
  • calc=‘1’ –> Rotation synchrone des échantillons. Tant que calc=‘1’, l’ensemble des échantillons se décalent d’un cran à chaque coup d’horloge. La rotation doit se faire sans perte.

la sortie de la pile correspondant en permanence à la case du bas.

Le registre

Registre de taille d’entrée N_E et de taille de sortie N_S.
Le registre est donc capable de faire l’extension de format pour des nombres signés

Le Séquenceur

Il est demandé d’établir le diagramme d’état du séquenceur.

  • Tant que ref=‘1’, Il faudra envisager une série d’états pour lesquels on remplit la pile de référence (en observant l’entrée clke permettant de savoir quand un nouvel échantillon est disponible)
  • lorsque ref=‘0’, chaque nouvel échantillon doit être placé dans la pile de réception, le calcul de corrélation doit être effectué en faisant tourner 44 fois les piles

Architecture Série/Parallèle

L’architecture suivante permet d’effectuer le calcul deux fois plus rapidement.

Modifier l’architecture série en conséquence

correlateur_par.svg