Viterbi soft décodage?

A

abeille

Guest
J'ai une idée de l'application du décodeur Viterbi dur.Can anyone plz tell me le concept derrière le décodage Viterbi soft et quelle est la diff b / w Viterbi dur et le décodage de Viterbi soft?

 
Demapper enverra décision difficile (1 / 0) ou la décision douce (3/4/6bits comme ils le doivent ur).

En Viterbi Direction distance de Hamming métriques de calcul est utilisée pour la prise de Hard et euclidienne (ou Manhattan) à distance est utilisée pour la prise Soft.

 
can u plz m'expliquer le comment pouvons-nous attribuer 3/6/8 biits dans le décodage de mou?

 
Vous avez besoin de concevoir un tableau quantum à représenter le symbole de 3 bits, puis utilisez la distance Euclean comme une métrique pour effectuer le décodeur doux.

 
regarder la modulation (QPSK, QAM) utilisé pour votre conception.
Ne démodulation et ensuite utiliser quanization des informations relaibility estimation de canal pour obtenir vos morceaux doux.

 
Je ne pourrais pas obtenir les réponses, seront reconnaissants si u guys plz expliquer un peu plus avec quelques exemple.
merci

 
Salut

Vous pouvez vérifier la convolution didacticiel sur les codage sur complextoreal.com

Salam
Hossam Alzomor
www (.) ig (.) org

 
Fondamentalement 3/6/8 sont le taux de code ...
moyens 3 bit i / p et vous u get o / p sous forme perforé comme si le taux de code est de 3 / 4 puis l'INSEAD d'obtenir 6 bits o / p..u obtenir 4 bits seulement ... deux morceaux seront removd .. .

Départ 802.16d pdf ... Viterbi conding perforé est explaind there .....

 
Puis-je avoir retrouvé aucun exemple de décodage Viterbi?

tx

 
Je l'avais fait de cette façon, dunno est-il correct ou non.

1) le signal QPSK mod (o / p == [1 j, -1 j, 1-j,-1-j])

2) Passer par le bruit AWGN (o / p == inconnu)

3) Quantifier la partie réelle du signal bruité (o / p == [1 2 3 4 5 6 7])

4) Quantifier la partie imaginaire du signal bruyant (o / p == [1 2 3 4 5 6 7])

5) combinée à la fois le réel et quantifié o imaginaire / p ensemble.(Im, Re, Im, Re ...)

6) décodage de Viterbi soft.

7) Ans

Hope it helps ..

 
can u plz expliquer comment avez-u quantifier la partie réelle et imaginaire puis les combinés ensemble?

Merci

 
Comment dois-je mettre? Je ne suis pas bon pour expliquer, alors si je n'explique pas bien, pardonnez-moi ok?

Comme vous le savez, QPSK est dans un tel format:
01 (-1 j) | 00 (1 j)
------------|--------------
11 (-1-j) | 10 (1-j)

Lorsque, en 00, 01, 11, 10 est sous forme d'entrées binaires et après QPSK, la sortie devient le domaine complexe.

Toutefois, si vous l'observez, vous remarquerez que nous pouvons représenter le MSB que le terme imaginaire, tandis que le LSB comme le terme réel.Par exemple: QPSK (01) = -1 j, de sorte qu'il est de 0 signifie MSB et LSB est de 1 et 0 représentent une valeur dans le domaine complexe et 1 représentent une valeur dans le domaine complexe.

Ainsi, après avoir ajouté du bruit, la valeur dans le domaine complexe va changer, par exemple (10) (1-j), il devient 0.51-j0.81

Ainsi, dans la partie de quantification, Je le fais dans la partie réelle et imaginaire séparément.Je l'ai quantifié en 3 bits.For real 0,51 = 5 après avoir quantifié et imaginaire -0,81 = 0 après quantifiées.

Ainsi, après que je combiner les deux en faisant de la quantification imaginaires que le MSB et quantifiée réelle que la LSB, la sortie devient 05.Alors je nourris dans mon décodeur Viterbi doux pour obtenir ma sortie.Toutefois u faut ici noter, c'est que le décodeur Viterbi soft traiter quantifié 0 comme a confirmé le bit 0 et quantifié 7, comme le bit 1.Cependant ici, vous verrez que les pour la partie imaginaire d'être confirmer le bit 0 est faux car il doit être de 1, comme expliqué ci-dessus.Donc, vous devez procéder à une opération inverse après le décodeur Viterbi pour obtenir la sortie QPSK correcte.Hope it bien expliqué ..

PS: cette méthode ne peut fonctionner que pour QPSK, et la modulation d'autre non.Ajouté après 44 secondes:Comment dois-je mettre? Je ne suis pas bon pour expliquer, alors si je n'explique pas bien, pardonnez-moi ok?

Comme vous le savez, QPSK est dans un tel format:
01 (-1 j) | 00 (1 j)
------------|--------------
11 (-1-j) | 10 (1-j)

Lorsque, en 00, 01, 11, 10 est sous forme d'entrées binaires et après QPSK, la sortie devient le domaine complexe.

Toutefois, si vous l'observez, vous remarquerez que nous pouvons représenter le MSB que le terme imaginaire, tandis que le LSB comme le terme réel.Par exemple: QPSK (01) = -1 j, de sorte qu'il est de 0 signifie MSB et LSB est de 1 et 0 représentent une valeur dans le domaine complexe et 1 représentent une valeur dans le domaine complexe.

Ainsi, après avoir ajouté du bruit, la valeur dans le domaine complexe va changer, par exemple (10) (1-j), il devient 0.51-j0.81

Ainsi, dans la partie de quantification, Je le fais dans la partie réelle et imaginaire séparément.Je l'ai quantifié en 3 bits.For real 0,51 = 5 après avoir quantifié et imaginaire -0,81 = 0 après quantifiées.

Ainsi, après que je combiner les deux en faisant de la quantification imaginaires que le MSB et quantifiée réelle que la LSB, la sortie devient 05.Alors je nourris dans mon décodeur Viterbi doux pour obtenir ma sortie.Toutefois u faut ici noter, c'est que le décodeur Viterbi soft traiter quantifié 0 comme a confirmé le bit 0 et quantifié 7, comme le bit 1.Cependant ici, vous verrez que les pour la partie imaginaire d'être confirmer le bit 0 est faux car il doit être de 1, comme expliqué ci-dessus.Donc, vous devez procéder à une opération inverse après le décodeur Viterbi pour obtenir la sortie QPSK correcte.Hope it bien expliqué ..

PS: cette méthode ne peut fonctionner que pour QPSK, et la modulation d'autre non.

 
Way UR mai être correcte, mais la chose est que je veux le mettre en œuvre dans MATLAB et pour ce dont je pense que si j'ai besoin de quantification.le GI problème auquel sont confrontés, c'est que mon décodeur Viterbi soft fonctionne très bien dans AWGN Channle mais quand je appliquer mes deocoder Viterbi soft à Rayleigh channel fading avec un bruit blanc gaussien du REC vs SNR graphique est la même que s'il n'y a pas de codage utilisé (c.-codés et non codés BER courbes sont identiques).Can anyone plz me dire si il ya des mesures particulières à suivre en présence d'un évanouissement de Rayleigh.

Tx.

 
si votre modèle est
Encoder ---> entrelacement ---> Mapper ---> IFFT ----> Channel ----> FFT -----> De-Mapper (bits sfot )---> De-entrelacement -- -> Viterbi

puis pour vérifier AWGN suffit.

Évanouissements de Rayleigh u égaliseur besoin et stuff PLL.

 
@ Babyeric

Je viens juste vu ce fil.
Je suis srry but i couldnt comprendre comment avez u ce faire: - (10) (1-j), il devient 0.51-j0.81
Je veux dire comment as-u obtenir le nombre entier 0,51 et 0,81

 
, mainly used in systems with Convolution(al) codes
.

Décodage Viterbi est le maximum algorithme de décodage likelihgood,
principalement utilisé dans les systèmes à convolution (al) codes.but not numerical algorithms.

Le dernier moyen, qu'il est absolument exact,
mais pas algorithmes numériques.En raison de ses codes convolutifs existense est très étendu maintenant.Bien sûr, le décodage de Viterbi mai s'appliquer à tout autre type de codes, mais il sera inefficace et beaucoup de temps.
.

Décodage Viterbi est habituellement effectuée sur la grille de code.À chaque étape 2 bits actuels sont comparés avec les paramètres correspondants des branches de cette grille.Les différences sont calculées et mémorisées.

. This sequence of steps is repeated until all the bit stream is finally decoded.

En conséquence, ces paramètres sont accumulés à chaque étape. Lorsque 2 branches sont réunis dans un seul noeud 1 branche demeure, qui a la métrique minimale totale (ou le maximum de corrélation avec les bits reçus.
Cette séquence d'étapes est répété jusqu'à ce que tous les flux de bits est enfin décodé.

Dans Hard-iterbi décodage nous utilisons Hamming métriques (c'est-à-dire, les bits sont démodulé en premier et ensuite estimée en fonction de la distance de Hamming minimale).In Soft-décodage Viterbi nous évitons démodulation, mais immeadiarely essayer de trouver l'estimation des bits transmis selon les minimum de distance euclidienne.

Il est également possible de substituer calcul de la distance de corrélation un.Cela signifie que l'on trouve le coefficient de corrélation entre les bits actuelle (en général 2, comme dans la convolution (al) codes) et ceux correspondant à une certaine branche, par laquelle on obtient les bits décodés.

Décodage est plus sensible, que la dure, la perte d'énergie est d'environ 2-3 dB.

Les codes convolutifs sont renvoyées à une classe très vaste de lutte contre le bruit codes.

. In fact, Viterbi decoder may correct even more mistakes if they are not grouped (packeted)
.

Ils sont capables de corriger les erreurs en fonction de leur distance de code d: d> = 2 * t 1. En fait, le décodeur Viterbi mai corriger des erreurs encore plus si elles ne sont pas regroupés (packeted).Exemple: Imaginez que vous avez 2 combinaisons possibles unaire à l'entrée: 0 et 1.Par conséquent, il ya 4 combinaisons possibles après convolution (al) de codage: 00, 01, 10, 11.Puis le train de bits est transmis par canal AWGN.Les bits reçus sont, par exemple, le texte suivant:

y = (0,5, -3, 1.5, -0.5, 1, 0, -1.5, -2.5, 6)

a) Lors du décodage difficile au début, vous devrez remplacer ces composantes avec 0 et 1 (ou avec 1 et -1).If (y i)> = 0, alors Y (i) = 1.If (y i) <0, alors Y (i) = -1.Par là, nous démoduler le vecteur reçu et obtenez:

y = (1 -1 1 -1 1 1 -1 -1 1).Après cela, nous décoder cette observation avec l'utilisation de la distance euclidienne.

b) Dans seuillage-nous évaluer la corrélation entre chaque paire de bits avec la Direction générale de la grille de code, par exemple:

00 -> 1 1
0,5 -3 -> 0.5, -3

Corrélation = 1 * 0,5 1 * (-3) = -2,5.On choisit finalement la voie à la corrélation maximale.

-------------------------------------------------- ---------------------------------

Voir Bernard Sklar "Digital Communications - Fundamentals and Applications"

Avec respect,

Dmitrij

 
Salut haneet,

(10) (1-j), il devient 0.51-j0.81 est juste un exemple.ce que je veux dire (10) (1-j) est le point de la constellation.[1-j] est la sortie après modulation QPSK.(10): les bits de données originale.Après l'ajout de bruit, je l'ai mise devenir 0.51-j0.81 est juste un exemple.Cela ne signifie pas vraiment que, après l'ajout de bruit, vous obtiendrez ce résultat que le bruit est aléatoire, donc nous ne saurons pas quel résultat il fera.

Désolé de vous induire en erreur.

Cordialement

BTW Dmitrij avait une explication très détaillée Abt Viterbi ..Je ne me suis pas fait de détails.haha ..

 
La différence betwenn mous et durs en Viberti décodage dépendent du type de canal que vous utilisez, si it'binary ou de Gauss.Mais le plus utile, je pense qu'il est gaussien, car il a le meilleur BER.

 
Quelqu'un at-il un code MATLAB pour le décodeur Viterbi
merci

 

Welcome to EDABoard.com

Sponsor

Back
Top