• Nenhum resultado encontrado

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%.