Nesta seção iremos avaliar o desempenho e a complexidade de decodificação utilizando o método proposto para os mesmos códigos considerados na seção anterior. Porém, agora iremos considerar
° ° ±² ³ ³ ±² ´ ´ ±² µ ³° ¶ o ³° ¶ n ³° ¶ m ³° ¶ l ³° i · ¸¹ ¸º » ¼ ½ ¾ ¿ À Á¸º  ¸Ã¸¼ º ¼ ½ Ä Å Æ Ç È É¿ ¼ ¿ Ê »¿ Ë ¿ Ì É¿ Í ¸É½ »Â ¸ ° ° ±² ³ ³ ±² ´ ´ ±² µ ° ° ±´ ° ±Î ° ±Ï ° ±Ð ³ · ¸¹ ¸º » ¼ ½ ¾ ¿ À Á¸º  ¸Ã¸¼ º ¼ ½ ÑÒ Ó Ô ÕÖ × Ø ÙÚ ÙÖ ÛÒ Ü ÓÚ Õ ØÝ Ú ÙÚ Í ¸É½ »Â ¸ · ¸¹ ¸Éº À ɽ Þ ß Ë ½ »¸¿ » à á â ±µ ±³´ Ç È É¿ ¼ ¿ Ê »¿ Ë ¿ ÌÉ¿ à Þ ¸¹ ß Ãº ã ä ¿
Figura 3.16: Desempenho e Complexidade Normalizada em Função do Limiar de Confiabilidade para
° ° ±² ³ ³ ±² ´ ´ ±² µ ³° ¶ o ³° ¶ n ³° ¶ m ³° ¶ l ³° i · ¸¹ ¸º » ¼ ½ ¾ ¿ À Á¸º  ¸Ã¸¼ º ¼ ½ Ä Å Æ Ç È É¿ ¼ ¿ Ê »¿ Ë ¿ Ì É¿ Í ¸É½ »Â ¸ ° ° ±² ³ ³ ±² ´ ´ ±² µ ° ° ±´ ° ±Î ° ±Ï ° ±Ð ³ · ¸¹ ¸º » ¼ ½ ¾ ¿ À Á¸º  ¸Ã¸¼ º ¼ ½ ÑÒ Ó Ô ÕÖ × Ø ÙÚ ÙÖ ÛÒ Ü ÓÚ Õ ØÝ Ú ÙÚ Í ¸É½ »Â ¸ · ¸¹ ¸Éº À ɽ Þ ß Ë ½ »¸¿ » à á â ±µ ±³µ Ç È É¿ ¼ ¿ Ê »¿ Ë ¿ ÌÉ¿ à Þ ¸¹ ß Ãº ãä ¿
Figura 3.17: Desempenho e Complexidade Normalizada em Função do Limiar de Confiabilidade para
um canal com desvanecimento Rayleigh.
O desempenho do algoritmo proposto é avaliado em termos da taxa de erro de bit (BER) em função deEb/N0 para diferentes limiares de confiabilidade L. Também iremos avaliar a complexidade,
que será calculada pelo número de ramos sobreviventes na treliça. Além disso, mostraremos os tempos de simulação para a decodificação dos códigos convolucionais utilizando o método proposto. A complexidade e o tempo de decodificação serão normalizados pelos valores obtidos do algoritmo de Viterbi.
Para avaliar a eficácia do método proposto iremos também considerar nesta seção códigos con- volucionais com m = 2 e 3 memórias e taxas rc = 1/2e1/3. Primeiramente iremos avaliar o código
com m = 2 e taxa rc =1/2, com matriz geradora G = [7, 5]. A Fig. 3.18 ilustra o desempenho deste
código em função da relação Eb/N0 para diferentes limiares de confiabilidade. A Fig. 3.19 ilustra a
complexidade e o tempo de simulação normalizados.
Conforme vimos no Capítulo 3, quando o limiar é grande nenhuma amostra é classificada como confiável e, consequentemente, nenhum bit é previamente decidido. Assim, para o caso em que o limiar L → ∞ o desempenho e a complexidade são iguais aos obtidos pelo algoritmo de Viterbi e suas curvas serão utilizadas como comparação para avaliarmos o método proposto. Observando a Fig. 3.18 podemos ver que para Eb/N0 acima de 6 dB, o desempenho é praticamente o mesmo
que o obtido pelo algoritmo de Viterbi quando utilizamos os limiares L = 1, 0 e 0, 8. Porém, as complexidades para estes limiares são de 43% e 30%, respectivamente, conforme mostra a Fig. 3.19 (a). Isso significa que, utilizando o método proposto, é possível o decodificador ter um desempenho semelhante ao do algoritmo de Viterbi, porém com complexidade até 70% menor.
Para uma BER de 2 × 10−4, podemos ver na Fig. 3.18 que há uma degradação de desempenho
de cerca de 0, 3 dB quando utilizamos o limiar L = 0, 6. Porém, para este limiar a complexidade é cerca de 20% a do algoritmo de Viterbi, ou seja, a redução da complexidade é de 80%. A redução de complexidade pode ser medida pelo número de ramos na treliça, visto que o tempo de simulação é proporcional ao número de ramos remanescentes, conforme ilustra a Fig. 3.19.
Para um limiar L = 0 a complexidade é mínima, pois todos os bits são previamente decididos e resta na treliça somente um caminho sobrevivente. Para o código com 2 memórias e taxa1/2, existem
8 ramos em cada seção da treliça. Assim, para o limiar L = 0 a complexidade será de1/8 = 0, 125.
Porém, neste caso o desempenho é muito ruim, conforme podemos ver na Fig. 3.18.
Avaliamos agora o método proposto para um código com m = 3 memórias e taxa rc = 1/2
com matriz geradora G = [64, 74]. A Fig. 3.20 ilustra o desempenho deste código para diferentes limiares de confiabilidade. As Fig. 3.21 (a) e (b) ilustram a complexidade e o tempo de simulação normalizados pelos valores do algoritmo de Viterbi. Observando essas figuras, podemos verificar que para valores deEb/N0mais altos, o desempenho com os limiares L = 1, 0 e 0, 8 é muito próximo ao do
i l m n o k ¯ li pq lipr lips lipt lipu liv wxyz {|}~ →∞ l i i ¯ i i o i
Figura 3.18: Desempenho do Código Convolucional G = [7, 5] em um Canal com Desvanecimento Rayleigh. ¡ ¢£ ¢ ¤ ¥ £ ¡¦ £ ¢£ § →∞ §¨© §¨© §¨© §¨© §¨
(a) Complexidade Normalizada.
ª ¢ « ¡ ¬ £ ® ¤ ¥ £ ¡¦ £ ¢ § →∞ §¨© §¨© §¨© §¨© §¨
(b) Tempo de Simulação Normalizado.
Figura 3.19: Complexidade e Tempo de Simulação Normalizados do Código Convolucional G = [7, 5] em um Canal com Desvanecimento Rayleigh.
i l m n o k ¯ lipq li pr lips lipt lipu w xyz {|}~ →∞ l i i ¯ i i o i
Figura 3.20: Desempenho do Código Convolucional G = [64, 74] em um Canal com Desvanecimento Rayleigh.
algoritmo de Viterbi, porém para um limiar igual a 1, 0, a complexidade é de aproximadamente 38% e para um limiar 0, 8, a complexidade é de cerca de 22%. Isso mostra uma redução de complexidade de até 78%, mas com desempenho muito próximo ao obtido pelo algoritmo de Viterbi.
Observando as Fig. 3.21 (a) e (b), mais uma vez podemos verificar que os tempos de simulação são proporcionais ao número de ramos na treliça, o que confirma os cálculos apresentados na Tab. 3.3.
Os dois códigos analisados até agora nesta seção têm taxa1/2. Vamos agora avaliar o desempenho
do método proposto para dois códigos de taxa1/3. Primeiramente vamos considerar um código com
m = 2 memórias, ou seja, que tem treliça com 4 estados. O código tem matriz geradora G = [5, 7, 7], em notação octal. A Fig. 3.22 ilustra o desempenho e a Fig. 3.23 a complexidade e o tempo de simulação normalizados. Através destas duas figuras podemos concluir que o método proposto utilizando um limiar L = 1, 50 obtém praticamente o mesmo desempenho que o algoritmo de Viterbi. ParaEb/N0 acima de 7 dB e com limiar L = 1, 25 é possível também atingir um desempenho muito
próximo ao obtido pelo algoritmo de Viterbi, mas com menor complexidade. Para um limiar 1, 50 a complexidade varia entre 40% e 53% e para o limiar L = 1, 25 a complexidade varia entre 30% e 38% em comparação à complexidade do algoritmo de Viterbi. Com isso, podemos ver que para
Eb/N0 maiores que 7 dB é possível reduzir a complexidade em cerca de 62%, mantendo praticamente
o mesmo desempenho que o Viterbi quando se utiliza um limiar L = 1, 25. A redução do tempo de simulação tem a mesma proporção que a redução do número de ramos na treliça, conforme podemos observar nas Fig. 3.23 (a) e (b).
¡ ¢£ ¢ ¤ ¥ £ ¡¦ £ ¢£ § →∞ §¨© §¨© §¨© §¨© §¨
(a) Complexidade Normalizada.
ª ¢ «¡ ¬ £ ® ¤ ¥ £ ¡¦ £ ¢ § →∞ §¨© §¨© §¨© §¨© §¨
(b) Tempo de Simulação Normalizado.
Figura 3.21: Complexidade e Tempo de Simulação Normalizados do Código Convolucional G = [64, 74] em um Canal com Desvanecimento Rayleigh.
i l m n o k ¯ lipq lipr lips lipt lipu li v w xyz {|}~ →∞ l ki l mk l ii i k i
Figura 3.22: Desempenho do Código Convolucional G = [5, 7, 7] em um Canal com Desvaneci- mento Rayleigh.
¡ ¢£ ¢ ¤ ¥ £ ¡¦ £ ¢£ § →∞ §¨© §¨© §¨© §¨© §¨
(a) Complexidade Normalizada.
ª ¢ «¡ ¬ £ ® ¤ ¥ £ ¡¦ £ ¢ § →∞ §¨© §¨© §¨© §¨© §¨
(b) Tempo de Simulação Normalizado.
Figura 3.23: Complexidade e Tempo de Simulação Normalizados do Código Convolucional G = [5, 7, 7] em um Canal com Desvanecimento Rayleigh.
G = [54, 64, 74]. Este código tem 3 memórias e taxa1/3. O método proposto apresenta praticamente
o mesmo desempenho que o algoritmo de Viterbi paraEb/N0 maior que 6 dB, quando o limiar é 1, 75.
QuandoEb/N0 = 7 dB praticamente o mesmo desempenho é conseguido quando se utiliza limiar de
confiabilidade de 1, 50. Porém, paraEb/N0 = 7 dB, a complexidade é cerca de 54% e 39% para os
limiares 1, 75 e 1, 50, respectivamente. Ou seja, é possível reduzir a complexidade em mais de 60%, mantendo praticamente o mesmo desempenho que o algoritmo de Viterbi. Observando a Fig. 3.25, podemos ver que os tempos de simulação reduzem em igual proporção à complexidade.
Se considerarmos uma BER de 2 × 10−4, podemos ver que para um limiar de L = 1, 25 temos
uma degradação de cerca de 0, 8 dB, em que a complexidade é pouco maior de 20%, o que significa uma redução de quase 80%.
Pelas curvas de BER, complexidade e tempo de simulação apresentadas nesta seção, vimos que é possível obter desempenho similar ao obtido pelo algoritmo de Viterbi, porém com complexidade muito menor. Quanto menor é o limiar de confiabilidade, menor também é a complexidade, porém maior é a taxa de erro de bit. A escolha de um limiar adequado deve ser feita de maneira a obter uma BER próxima a do algoritmo de Viterbi, mas que permita obter a menor complexidade possível.
Para um valor fixo deEb/N0, podemos avaliar o desempenho e a complexidade do método proposto
em função do limiar de confiabilidade. Assim, podemos determinar o valor adequado do limiar com o qual é possível atingir praticamente o mesmo desempenho que o algoritmo de Viterbi com a menor complexidade possível. A Fig. 3.26 mostra as curvas de BER e complexidade normalizada em função do limiar de confiabilidade paraEb/N0 = 7 dB considerando o código G = [7, 5]. No gráfico superior
i l m n o k li pq lipr lips lipt lipu liv wxyz {|}~ →∞ l k l ki l mk l ii i
Figura 3.24: Desempenho do Código Convolucional G = [54, 64, 74] em um Canal com Desvaneci- mento Rayleigh. ¡ ¢£ ¢ ¤ ¥ £ ¡¦ £ ¢£ § →∞ §¨© §¨© §¨© §¨© §¨
(a) Complexidade Normalizada.
ª ¢ « ¡ ¬ £ ® ¤ ¥ £ ¡¦ £ ¢ § →∞ §¨© §¨© §¨© §¨© §¨
(b) Tempo de Simulação Normalizado.
Figura 3.25: Complexidade e Tempo de Simulação Normalizados do Código Convolucional G = [54, 64, 74] em um Canal com Desvanecimento Rayleigh.
° ° ±² ³ ³ ±² ´ ´ ±² µ ³° ¶ o ³° ¶ n ³° ¶ m ³° ¶ l ³° · ¸¹ ¸º » ¼ ½ ¾ ¿ À Á¸º  ¸Ã¸¼ º ¼ ½ Ä Å Æ Ç È É¿ ¼ ¿ Ê »¿ Ë ¿ Ì É¿ Í ¸É½ »Â ¸ ° ° ±² ³ ³ ±² ´ ´ ±² µ ° ° ±´ ° ±Î ° ±Ï ° ±Ð ³ · ¸¹ ¸º » ¼ ½ ¾ ¿ À Á¸º  ¸Ã¸¼ º ¼ ½ ÑÒ Ó Ô ÕÖ × Ø ÙÚ ÙÖ ÛÒ Ü ÓÚ Õ ØÝ Ú ÙÚ Í ¸É½ »Â ¸ · ¸¹ ¸Éº À ɽ Þ ß Ë ½ »¸¿ » à á â ±µ ±³° Ç È É¿ ¼ ¿ Ê »¿ Ë ¿ ÌÉ¿ à Þ ¸¹ ß Ãº ã ä ¿
Figura 3.26: Desempenho e Complexidade Normalizada em Função do Limiar de Confiabilidade para
Eb/N0 = 7 dB com Código Convolucional G = [7, 5] em um Canal com Desvanecimento Rayleigh.
comparação mostramos também as curvas de BER e complexidade obtidas pelo algoritmo de Viterbi. Observando os dois gráficos podemos ver que para um limiar L = 1, 0 o método proposto obtém o mesmo desempenho que o algoritmo de Viterbi, porém a complexidade é de 43%, ou seja, o método proposto reduz a complexidade em 57%. Para um limiar de 0, 8 a BER é de 1, 07 × 10−3, enquanto
que para o algoritmo de Viterbi a BER é de 0, 9 × 10−3. As taxas de erro são muito próximas, mas
para este limiar a complexidade é de 30%, ou seja, a redução é de 70%.
Na parte de baixo do gráfico da Fig. 3.26 podemos ver as curvas da complexidade obtidas por simulação e o limitante superior calculado em (3.10). Podemos observar que a curva obtida por simulação tende a se aproximar do limitante à medida que o valor de L aumenta. As curvas não estão sobrepostas, pois o limitante é calculado observando somente 3 seções da treliça. Se observássemos mais seções, veríamos as curvas se aproximando cada vez mais, conforme explicado anteriormente e mostrado na Fig. 3.14.
Para o código G = [64, 74] é obtido praticamente o mesmo desempenho que o algoritmo de Viterbi quando o limiar é L = 1, 0, porém a complexidade é somente 38%, conforme mostra a Fig. 3.27. Para um limiar de 0, 8 a BER é próxima à obtida pelo algoritmo de Viterbi e a complexidade cai para 22%.
° ° ±² ³ ³ ±² ´ ´ ±² µ ³° ¶ o ³° ¶ n ³° ¶ m ³° ¶ l ³° i · ¸¹ ¸º » ¼ ½ ¾ ¿ À Á¸º  ¸Ã¸¼ º ¼ ½ Ä Å Æ Ç È É¿ ¼ ¿ Ê »¿ Ë ¿ Ì É¿ Í ¸É½ »Â ¸ ° ° ±² ³ ³ ±² ´ ´ ±² µ ° ° ±´ ° ±Î ° ±Ï ° ±Ð ³ · ¸¹ ¸º » ¼ ½ ¾ ¿ À Á¸º  ¸Ã¸¼ º ¼ ½ ÑÒ Ó Ô ÕÖ × Ø ÙÚ ÙÖ ÛÒ Ü ÓÚ Õ ØÝ Ú ÙÚ Í ¸É½ »Â ¸ · ¸¹ ¸Éº À ɽ Þ ß Ë ½ »¸¿ » à á â ±µ ±³ ³ Ç È É¿ ¼ ¿ Ê »¿ Ë ¿ ÌÉ¿ à Þ ¸¹ ß Ãº ãä ¿
Figura 3.27: Desempenho e Complexidade Normalizada em Função do Limiar de Confiabilidade para
° ° ±² ³ ³ ±² ´ ´ ±² µ ³° ¶ o ³° ¶ n ³° ¶ m ³° ¶ l ³° i · ¸¹ ¸º » ¼ ½ ¾ ¿ À Á¸º  ¸Ã¸¼ º ¼ ½ Ä Å Æ Ç È É¿ ¼ ¿ Ê »¿ Ë ¿ Ì É¿ Í ¸É½ »Â ¸ ° ° ±² ³ ³ ±² ´ ´ ±² µ ° ° ±´ ° ±Î ° ±Ï ° ±Ð ³ · ¸¹ ¸º » ¼ ½ ¾ ¿ À Á¸º  ¸Ã¸¼ º ¼ ½ ÑÒ Ó Ô ÕÖ × Ø ÙÚ ÙÖ ÛÒ Ü ÓÚ Õ ØÝ Ú ÙÚ Í ¸É½ »Â ¸ · ¸¹ ¸Éº À ɽ Þ ß Ë ½ »¸¿ » à á â ±µ ±³´ Ç È É¿ ¼ ¿ Ê »¿ Ë ¿ ÌÉ¿ à Þ ¸¹ ß Ãº ã ä ¿
Figura 3.28: Desempenho e Complexidade Normalizada em Função do Limiar de Confiabilidade para
Eb/N0 = 7 dB com Código Convolucional G = [5, 7, 7] em um Canal com Desvanecimento Rayleigh.
Conforme pode ser visto na Fig. 3.28, com o código G = [5, 7, 7] praticamente o mesmo de- sempenho é obtido quando o limiar é igual a 1, 4 e, neste caso, a complexidade é de 47%. Ou seja, o método proposto elimina mais da metade da complexidade, mantendo o mesmo desempenho que o algoritmo de Viterbi.
Para o código G = [54, 64, 74] o mesmo desempenho que o algoritmo de Viterbi é atingido quando L = 1, 4, como ilustrado na Fig. 3.29. Neste caso a complexidade é de somente 32%, ou seja, a redução obtida é de 68%.