Upload
others
View
5
Download
0
Embed Size (px)
Citation preview
- 1 -
ALGORITMO DE WATERFILLING PARA ALOCAÇÃO
DE POTÊNCIA EM SISTEMAS MIMO
Daniel Barradas Ribeiro
Projeto de Graduação apresentado ao Curso de
Engenharia Eletrônica e de Computação da Escola
Politécnica, Universidade Federal do Rio de
Janeiro, como parte dos requisitos necessários à
obtenção do título de Engenheiro.
Orientador: Gelson Vieira Mendonça
Rio de Janeiro
Outubro de 2016
- 2 -
- 3 -
- 4 -
DEDICATÓRIA
Aos meus pais, meu irmão e meus amigos que sempre estiveram por perto.
- 5 -
AGRADECIMENTO
A realização deste trabalho, deste curso de Engenharia Eletrônica e de
Computação e de todas minhas conquistas só se deu devido ao apoio ininterrupto de
muitas pessoas. Manifesto minha gratidão a todas elas.
- 6 -
RESUMO
O consumo de energia vem aumentando exponencialmente nos últimos anos.
Com a criação de smartphones, computadores pessoais, o desenvolvimento da Internet
das Coisas (“Internet of Things”), a quantidade de dados que trafegam a cada segundo
tem só aumentado e para cada “bite” transmitido isso tem um custo energético atrelado.
Uma das principais preocupações é como conseguir continuar nesta crescente da taxa de
transmissão de dados sem aumentar igualmente o consumo de energia. Além disso
como utilizar da maneira mais eficiente possível a energia que dispomos.
Com equipamentos cada vez mais portáteis, o seu tempo de funcionamento é
outro fator importante que está diretamente relacionado ao seu consumo de energia, e
saber utiliza-la da forma correta é uma fator chave para continuarmos desenvolvendo
tecnologias que ajudem o ser humano.
Este trabalho visa estudar como a melhor alocação de potência pode ser feita,
aumentando assim a capacidade de sistemas, sua confiabilidade de transmissão e
aumentando a eficiência energética, já que com a mesma energia, mas alocada de
maneira diferente mais informação poderá ser transmitida por segundo.
Palavras-Chave: energia, consumo, potência, Waterfilling, Massive MIMO,4G,5G
- 7 -
ABSTRACT
Energy consumption has been increasing exponentially in recent years. With the
creation of smartphones, personal computers, the development of the Internet of Things,
the amount of data that travels every second has only increased and for each transmitted
bite there is an energetic cost attached. One of the main concerns is how to continue
increasing data transmission rates without increasing the energy consumption. Even
more, how to use the energy we already have in the most efficient way possible.
With increasingly usage of portable equipment, its uptime is another important
factor that is directly related to its energy consumption, and knowing how to use
minimize the consumption and to correctly control where to delegate energy is a key
factor for us to continue to developing technologies that help the human being.
This work aims to study how the best power allocation can be done, increasing
the capacity of systems, their reliability of transmission and increasing the energy
efficiency, since with the same energy, but allocated in a different way, more
information can be transmitted per second .
Key-words: energy, MIMO, power, wireless, Waterfilling, Massive MIMO,4G,5G
- 8 -
SIGLAS
CNR – Channel Noise Ratio
CSI - Channel State Information
EPC - Evolved Packet Core
LTE - Long Term Evolution
MIMO – Multiple Input Multiple Output
MISO – Multiple Input Single Output
S/R – Signal to Noise Ratio
SDMA – Space-division multiple access
SISO – Single Input Single Output
SIMO – Single Input Multiple Output
SNR – Single to Noise Ratio
TDMA - Time Division Multiple Access
UFRJ – Universidade Federal do Rio de Janeiro
MU MIMO - Multi-user Multiple Input Multiple Output
- 9 -
Sumário
Introdução ................................................................................................................... - 13 -
1.1– Tema ............................................................................................................... - 13 -
1.2– Delimitação ..................................................................................................... - 13 -
1.3– Justificativa ..................................................................................................... - 13 -
1.4– Objetivos ......................................................................................................... - 14 -
1.5– Metodologia .................................................................................................... - 14 -
1.6– Descrição ........................................................................................................ - 14 -
Evolução da Tecnologia Wireless .............................................................................. - 15 -
2.1 – Introdução ...................................................................................................... - 15 -
2.2 – Primeira e Segunda Geração de Tecnologias de Comunicação Wireless (1G &
2G) .......................................................................................................................... - 15 -
2.3 – Terceira Geração (3G) ................................................................................... - 16 -
2.4 – Quarta Geração (4G LTE) ............................................................................. - 17 -
2.4.1 - Evolução .................................................................................................. - 17 -
2.4.2 – Parâmetros principais .............................................................................. - 20 -
2.4.3 – Arquitetura .............................................................................................. - 20 -
Sistemas Multiple Input Multiple Output ....................................................................... 23
3.1 – Introdução .......................................................................................................... 23
3.2 - SISO – Single Input Single Output ..................................................................... 24
3.3 - SIMO e MISO – Single Input Multiple Output e Multiple Input e Single Output
.................................................................................................................................... 25
3.4 - MIMO – Multiple Input e Multiple Output .................................................... - 26 -
3.4.1 - MIMO e suas perspectivas de usuários: Usuário único ........................... - 26 -
3.4.2 - MIMO e suas perspectivas de usuários: Múltiplos Usuários - MU MIMO
(Multi User MIMO) ............................................................................................ - 27 -
3.4.3 - Condições para o funcionamento ............................................................. - 29 -
3.4.5 – Massive MIMO ....................................................................................... - 30 -
3.5 – Informações sobre o Estado do Canal (CSI – Channel State Information) ... - 32 -
3.6 – Análise da Capacidade do sistema. ................................................................ - 32 -
3.6.1 – Capacidade de um sistema SISO ............................................................. - 33 -
3.6.2 – Capacidade de um sistema SIMO ou MISO ........................................... - 34 -
3.6.3 – Capacidade de um sistema MIMO .......................................................... - 35 -
3.6.3.1 – Decomposição em valores singulares de H .......................................... - 36 -
- 10 -
3.6.3.2 – Rank da matriz do Canal ...................................................................... - 37 -
3.6.3.3 – Valores Singulares e Energia ............................................................... - 38 -
3.6.3.4 – Algoritmo de Waterfilling e capacidade de sistemas MIMO ............... - 38 -
3.6.3.5 – Exemplo numérico do algoritmo de Waterfilling ................................ - 39 -
Implementação e análise do algoritmo de Waterfilling .............................................. - 43 -
4.1 – Introdução ...................................................................................................... - 43 -
4.2 - Implementação do código. .............................................................................. - 43 -
4.2.1 – Variáveis de entrada e saída. ................................................................... - 43 -
4.2.2 – Funcionamento do código ....................................................................... - 45 -
4.3 – Análise e Resultados ...................................................................................... - 46 -
4.3.1 – Alta Relação sinal Ruído ......................................................................... - 46 -
4.3.2 – Baixa Relação Sinal Ruído ...................................................................... - 48 -
4.4 – Algoritmo de Waterfilling em sistemas Massive MIMO ............................... - 51 -
Conclusão ................................................................................................................... - 56 -
5.1 – Conclusões sobre o algoritmo. ....................................................................... - 56 -
5.2 –Trabalhos futuros ............................................................................................ - 57 -
Bibliografia ................................................................................................................. - 58 -
- 11 -
Lista de Figuras
Figura 1 - Processo de evolução das tecnologias de comunicação. [5] ................................... - 17 -
Figura 2 - Rota de conexão [8] ................................................................................................ - 21 -
Figura 3 – Arquitetura E-UTRAN x EPC [9] ......................................................................... - 21 -
Figura 4 - Arquitetura E-UTRAN [8] ..................................................................................... - 21 -
Figura 5 - Arquitetura EPC [8] ................................................................................................ - 21 -
Figura 6- Transmissor e Receptor no sistema SISO .................................................................... 24
Figura 7 - TDMA: Slots de tempo .............................................................................................. 24
Figura 8 - Sistemas SIMO ........................................................................................................... 25
Figura 9 - Exemplo de um array simples de duas antenas ...................................................... - 28 -
Figura 10 - Sistema utilizando SDMA .................................................................................... - 29 -
Figura 11 - Cenários de Operação e não operação de sistemas MIMO .................................. - 29 -
Figura 12 - (a) Array de 160 antenas criado na Universidade de Lund na Suécia. (b) Ilustração
de um sistema Massive MIMO utilizando uma propagação direta (line-of-sight propagation),
tanto para o uplink quanto para o downlink. (c) Frame de uma transmissão Time Division
Duplex (TDD) . ....................................................................................................................... - 31 -
Figura 13 - Modelo de um sistema SISO [11] ........................................................................ - 33 -
Figura 14 - Modelo de um sistema MISO [11] ....................................................................... - 34 -
Figura 15 - Modelo de um sistema MIMO. ............................................................................ - 36 -
Figura 16 - Decomposição SVD da matriz H [11]. ................................................................. - 37 -
Figura 17 - Exemplo gráfico do algoritmo sendo utilizado [11] ............................................. - 41 -
Figura 18 - Potência alocada- Alto SNR ................................................................................. - 47 -
Figura 19- Potência alocada- Baixo SNR................................................................................ - 49 -
Figura 20 - Alocação de Potência - Baixo SNR - 2 ................................................................. - 50 -
Figura 21 - Sistemas MIMO 5x5, 50x50, 500x500 e 5000x5000 – Alto SNR ....................... - 52 -
Figura 22 - Capacidade x N° de antenas no MIMO em um ambiente com alto SNR ............. - 53 -
Figura 23 - Sistemas MIMO 5x5, 50x50, 500x500 e 5000x5000 - Baixo SNR ..................... - 54 -
Figura 24- Capacidade x N° de antenas no MIMO em um ambiente com baixo SNR ........... - 55 -
- 12 -
Lista de Tabelas
Tabela 1 - Diferenças entre as três primeiras gerações. .......................................................... - 16 -
Tabela 2 - Diferenças básicas entre as gerações de tecnologia de comunicação móvel. [6] ... - 19 -
Tabela 3 - Principais parâmetros do 4G. [7] ........................................................................... - 20 -
Tabela 4 - Passo a passo do funcionamento do algoritmo de Waterfilling ............................. - 40 -
Tabela 5 - Potência Alocada - Alto SNR ................................................................................ - 48 -
Tabela 6 - Potência alocada- Baixo SNR ................................................................................ - 49 -
Tabela 7 - Alocação de Potência - Baixo SNR - 2 .................................................................. - 50 -
Tabela 8 - Sistemas MIMO 5x5, 50x50 , 500x500, 5000x5000 – Alto SNR ......................... - 52 -
Tabela 9- Sistemas MIMO 5x5, 50x50, 500x500 e 5000x5000 - Baixo SNR ........................ - 54 -
- 13 -
Capítulo 1
Introdução
1.1 – Tema
O tema deste trabalho é o estudo de alocação de potência em sistemas Multiple
Input Multiple Output (MIMO) focando o desenvolvimento de novas tecnologias para a
próxima geração de sistemas Wireless. Pretende-se entender a eficiência de um
algoritmo usado para selecionar a quantidade de potência necessária em cada antena
para uma transmissão sem fio.
1.2 – Delimitação
Esse estudo é realizado em sistemas atuais de comunicação sem fio que utilizam
da tecnologia de transmissão via múltiplas fontes de entrada e saída do sinal. Sistemas
que são amplamente utilizados e conhecidos em transmissão de dados wireless em todo
o globo. Dentro das inúmeras características de um sistema de comunicação, focaremos
no estudo da distribuição de potência e da capacidade de cada um. Espera-se encontrar
uma forma de melhorar tais características.
1.3 – Justificativa
A quantidade de energia gasta em comunicação vem crescendo
exponencialmente a cada dia. Sabe-se que com o surgimento de smartphones,
computadores pessoais e até a Internet das Coisas (“Internet of Things”), a quantidade
de dados cresceu exponencialmente e para cada “bite” transmitido isso tem um custo
atrelado. Uma das principais preocupações é como conseguir manter ou aumentar a taxa
de transmissão de dados sem aumentar igualmente o consumo de energia.
A próxima geração de sistemas Wireless será lançada em breve. Para garantir
que os sistemas sejam confiáveis e eficientes, esse projeto mostra como resolver o
problema de alocação de potência em sistemas com múltiplas entradas e saídas de
dados, também chamado de “MIMO Systems”.
O algoritmo de Waterfilling é um método computacional rápido e inteligente
para ajudar na escolha da quantidade de potência alocada para cada antena. Este modelo
- 14 -
já é usado para uma pequena quantidade de antenas transmissoras e este estudo tenta
verificar como melhor implementar e os impactos causados em sistemas MIMO.
1.4 – Objetivos
O objetivo geral é o estudo da capacidade de transmissão e confiabilidade de um
sistema em que o algoritmo Waterfilling foi usado. Para cada sistema será medido a
capacidade utilizando o teorema de Shannon e em seguida será avaliado a eficiência do
algoritmo em comparação com outros métodos . Tem-se como objetivo específico o
estudo do funcionamento do algoritmo em um sistema com um número pequeno de
antenas e posteriormente a análise em sistemas do tipo Massive MIMO .
1.5 – Metodologia
Este trabalho ira utilizar de um algoritmo computacional para analisar como
deve ser feito a distribuição de potência no sistema. Em seguida será avaliado a partir do
cálculo da equação de Shannon para determinar a capacidade do canal. Por fim
realizaremos por meio do software Matlab, a avaliação de canais e sistemas do tipo
MIMO gerados com uma distribuição Rayleigh.
Primeiramente será estudada a efetividade do algoritmo para canais com um
pequeno número de antenas transmissoras e receptoras. Apenas após esclarecido os
aspectos como confiabilidade e eficiência nestes tipos de canais, aplicaremos o teste
para sistemas com um maior número de transmissores e receptores.
A partir de um estudo utilizando o Método de Monte Carlo avaliaremos como o valor da
capacidade de cada canal e como a eficiência do algoritmo varia com a quantidade do
número de antenas.
O êxito deste trabalho está centrado em determinar a real efetividade deste
algoritmo sobre sistemas MIMO e Massive MIMO. Esclarecendo se este alocação de
potência ainda será útil para as próximas gerações de sistemas wireless de comunicação.
1.6 – Descrição
- 15 -
Capítulo 2
Evolução da Tecnologia Wireless
2.1 – Introdução
Nos últimos anos temos enfrentado um aumento na popularidade de dispositivos
sem fio, consequentemente um aumento na demanda por uma capacidade de
transmissão maior. A quantidade de dados transmitida por dispositivos móveis cresce
exponencialmente dia após dia, fazendo com que sistemas de comunicação mais
rápidos, seguros e eficientes sejam uma preocupação real.
Atualmente utilizamos sistemas de 4ª geração e quando falamos nesse tipo, dois
nomes vem imediatamente à nossa cabeça: LTE (Long Term Evolution) ou sistemas
3GPP. Esse tipo de tecnologia veio com a promessa de atingir taxas de download
próximas de 100Mbits/s e uma eficiência espectral melhor do que as gerações anteriores
[1].
Melhorias na tecnologia LTE permitirão que os serviços de comunicações
possam avançar e satisfazer as necessidade e as expectativas da população para a
próxima década, este novo sistema será lançado como uma nova geração ou 5G.
Porém antes de estudarmos a atual geração de sistemas de comunicação devemos
entender como surgiram, as qualidades e as deficiências, nas tecnologias anteriores.
2.2 – Primeira e Segunda Geração de Tecnologias de Comunicação Wireless
(1G & 2G)
Os primeiros sistemas mobile foram lançados em 1981. Baseados em
transmissões analógicas tinham características como uma baixa qualidade de
comunicação, uma taxa de transmissão de dados muito baixa e sem encriptação. Essa
primeira geração tinha como base circuitos analógicos que comutavam os dados (canais
dedicados).
Com o sistema analógico chegando ao limite de sua capacidade, foi necessária a
mudança para o digital. A segunda geração de sistemas Wireless, trouxe uma eficiência
maior na administração e no uso do espectro de frequência. Utilizando tecnologias
como TDMA (Time Ddivision Multiple Access) e CDMA (Code Division Multiple
Access) alcançou-se uma maior taxa de transmissão de dados. Além disso, foi a primeira
- 16 -
vez que foi usado um SIM (Subscriber System Mobile) para identificação e autenticação
[1] [2].
2.3 – Terceira Geração (3G)
A terceira geração, também chamada de UMTS (Universal Mobile
Telecommunications Service ) unificou diferentes padrões, utilizando uma frequência
mais alta e banda maior, a transmissão era realizada utilizando uma técnica chamada
WCDMA ( Wideband Code Division Multiple Access) onde é possível atingir taxas de
transmissão entre 384 Kbit/s e 2048 Kbit/s. Uma das grandes diferenças entre as outras
gerações anteriores e esta era que sistemas 3G foram os primeiros a utilizar uma
hibridização entre sistemas de comutação de circuito e comutação de pacotes. Com o
número de usuários aumentando, foi necessário uma meio mais eficiente de utilizar o
espectro. Com a comutação de pacote (packet switching technology) , o canal era usado
apenas quando a informação era usada, o que permitiu com que companhias de
comunicação móvel utilizassem a mesma banda para várias conversas, trocas de dado
[3] [4].
Aqui temos uma pequena tabela ilustrando algumas diferenças entre as três
primeiras gerações de sistemas de comunicação sem fio.
Tabela 1
Tabela 1 - Diferenças entre as três primeiras gerações.
Com as melhorias geradas pelos sistemas UMTS, conseguiu-se:
Número reduzido de equipamentos
Melhor suporte a transmissão de arquivos multimídia.
- 17 -
Uso simultâneo do espectro de frequência e do tempo, utilizando a
criptografia de dados e a técnica de WCDMA.
Uso de comutação de pacotes em conjunto com a comutação de
circuitos.
2.4 – Quarta Geração (4G LTE)
2.4.1 - Evolução
O padrão atual de redes de comunicação sem fio é chamado de 4G LTE,
sucessor da terceira geração, veio com a promessa de melhorar a eficiência espectral e a
velocidade com que os usuários transmitiam e recebiam dados.
Desenvolvida pela Third-Generation Partnership Project (3GPP), é uma
evolução de diversas técnicas utilizadas previamente. Novos métodos de modulação e
novas abordagens como a utilização de packet switched ao invés da combinação de
packet e circuit switch como era feito no 3G, possibilitaram o aumento a capacidade da
rede, a confiabilidade e a velocidade das taxas de transmissão. Com esta nova
tecnologia, aplicações como transmissão de vídeo em alta definição, jogos e até
transmissão e até aplicações de realidade aumentada online foram finalmente feitas com
qualidade.
Na próxima imagem, vemos o caminho que levamos até atingir a tecnologia 4G
LTE :
Figura 1 - Processo de evolução das tecnologias de comunicação. [5]
Como podemos notar na imagem acima, para que a 4° geração de sistemas de
comunicação sem fio pudesse ser lançada, passamos por uma cadeia de evolução.
Podemos ressaltar neste processo de melhorias duas novas tecnologias que se destacam
- 18 -
para ser a base de sistemas 4G LTE; uma é a técnica chamada de Frequency Division
Multiple Access (FDMA) e o outro é o uso de sistemas Multiple Input Multiple Output
(MIMO). Estas duas novas abordagens foram um imenso passo dado com o intuito de
melhorar a latência e taxa de transmissão de dados e outros fatores chaves para a
transmissão de dados. Uma das principais melhorias atingidas foi um uso mais eficiente
do espectro e como isso foi alcançado será explicado futuramente.
Podemos também adicionar as seguintes características:
Taxa de Upload de 50Mbit/s
Taxa de Download de até 100 Mbit/s
Diminuição da latência para cerca de
Este sistema é compatível com os sistemas GSM, EDGE e UMTS
Suporte a handover e roaming com usuários diferentes concomitantemente na
rede .
- 19 -
Tabela 2 - Diferenças básicas entre as gerações de tecnologia de comunicação móvel. [6]
Nesta tabela acima, podemos ver muitas algumas gerações e as diferenças entre
elas. Podemos notar que são apresentadas diversas versões, além das explicadas
anteriormente, porém focando nos conceitos mais importantes, apenas algumas gerações
foram explicadas. Porém esta tabela demonstra claramente como o lançamento de uma
nova geração de tecnologia na verdade é um processo de evolução de diversas outras
técnicas já empregadas.
Vemos que a taxa de transmissão de dados tanto para o downlink quanto para o
uplink cresceu cerca de 100 vezes do 3G para o 4G e espera-se que para a próxima
geração isso se repita.
- 20 -
2.4.2 – Parâmetros principais
Tabela 3 - Principais parâmetros do 4G [7]
2.4.3 – Arquitetura
Para entendermos a arquitetura usada, precisamos ter em mente que redes 4G,
diferente da geração anterior, não utilizam mais circuit switching, ao invés disso é
utilizada uma tecnologia chamada packed switching, onde os dados são divididos em
pacotes e então transmitidos em meios de comunicação que podem ser simultaneamente
usados, aumentando a eficiência espectral do sistema.
Podemos separa a estrutura utilizada nos sistemas LTE em duas partes, a de
acesso chamada de Evolved UMTS Terrestrial Radio Access (E-UTRAN) e a estrutura
- 21 -
principal chamada de Evolved Packet Core (EPC), estas duas redes conectadas
compõem a arquitetura de um sistema 4G.
Figura 2 - Rota de conexão [8]
Figura 3 – Arquitetura E-UTRAN x EPC [9]
Vemos que o User Equipment (UE) , ou equipamento do usuário se comunica
com as estações bases chamadas de eNodeB ou eNB que então se comunicação com o
Evolved Packet Core, que em seguida se comunica com a rede de dados no mundo
exterior, como a internet, redes corporativas ou até algum subsistema da rede.
Abaixo vemos mais especificamente como cada parte da estrutura é composta.
Figura 4 - Arquitetura E-UTRAN [8]
Figura 5 - Arquitetura EPC [8]
Estas são as principais partes da arquitetura de rede:
22
1. User Equipment (UE): Este é o ponto de acesso do usuário ao sistema. Ele
geralmente é dividido em três partes: Terminal Equipment (TE), a parte que fica em
contato direto com o usuário (como a tela do notebook ou do celular), Mobile
Termination (MT), que é onde todas as funções de comunicaçação e os meios para
acessar a rede estão presentes, e a última, Universal Integrated Circuit Card (UICC)
qual integra ambas as partes. Normalmente, este dispositivo contém Universal
Subscriber Identity Model (USIM), que mantém informações sobre o número do
usuário do telefone, identidade de rede em casa e as chaves de segurança [8].
2. Evolved Node B (ENB): essencialmente desempenha a mesma função que
uma Transciever Base Station em redes GSM. Cada eNB contém, pelo menos, uma
fonte de alimentação, um transmissor de rádio, um receptor de rádio frequência e uma
seção de controle, além disso envia e recebe transmissões de rádio para todos os
celulares e controla operações de baixo nível como a aplicação do handover [8].
3. Mobility Management Entity (MME): Este é um componente de controle
tendo como principais funções gerenciar o acesso à rede, mobilidade, seleção da porta
de entrada e realizar alguns controles de segurança [8].
4. Packet Data Network (PDN) Gateway (P-GW): faz a comunicação com o
exterior onde cada rede de dados é identificado por um access point name (APN).
5. Serving gateway (S-GW): atua como um roteador encaminhando dados entre
a estação base (eNodeB) e o gateway PDN [8].
5. Home Subscriber Server (HSS): É a base central de dados que contém dados
de todos os usuários/assinantes de um operador de rede [8].
6. Mobility Management Entity (MME) controla a operação de alto nível do
celular por meio de mensagens e do servidor Home Subscriber (HSS) [10].
23
Capítulo 3
Sistemas Multiple Input Multiple Output
3.1 – Introdução
O primeiro documento explicando as vantagens de sistemas MIMO foram
publicados em 1987, desde então, esta tecnologia tem sido aplicada em diversos
recentes dispositivos sem fio; aumentando a capacidade de redes WLAN (Wireless
Local Area Network - redes locais de comunicação sem fio). Um sistema MIMO
basicamente consiste em uma estrutura sem fios que possuem várias antenas em ambos
os lados do sistema de comunicação.
Uma das principais vantagens desta estrutura é chamada de multiplexação
espacial, que surgiu de um conceito chamado diversidade, ou especificamente
diversidade espacial, o que a partir da utilização de múltiplas antenas, nas extremidade
da estrutura de comunicação, cria-se assim diferentes rotas de transmissão.
Para entendermos como sistemas MIMO funcionam auxiliam na comunicação
sem fio podemos olhar de duas maneiras separadas. Do ponto de vista do usuário
individual (single user perspective), onde a taxa de transmissão de dados aumentará, e
segunda é a partir da perspectiva do usuários múltiplos (Multi users perspective), onde
basicamente toda rede de comunicação tem simultaneamente diversos usuários, e ao
utulizarmos um sistemas MIMO conseguimos por através de manipulações matemáticas
e processamento de sinais conseguimos distinguir cada usuário dentro da rede, podemos
assim isola-los de modo que nenhum cause interferências no outro. Esta técnica é
também é referida como Space Division Multiple Access (SDMA).
Uma das melhores maneiras de medir o desempenho de um sistema de
comunicação digital é medir a capacidade de transmissão sendo também uma
ferramenta primária para caracterizar seu desempenho.
Antes de analisarmos um sistema MIMO, vamos entender sua evolução.
24
3.2 - SISO – Single Input Single Output
Figura 6- Transmissor e Receptor no sistema SISO
SISO é o acrônimo referente a Single Input Single Output, é convencionalmente
a estrutura utilizada em sistemas de comunicação, vide a Figura 6. O “input” refere-se
ao sinal transmitido por uma única antena e o “output” o sinal recebido por outra única
antena. Em qualquer ambiente, sistema de comunicação móvel, teremos mais de um
usuário e todos os usuários precisam ter acesso aos serviços simultaneamente, como
citado acima os sinais dos usuários são separados no tempo (TDMA), na frequência
(FDMA) ou em códigos (CDMA). Em TDMA, os usuários utilizam as mesmas
frequências para comunicação, porém não simultaneamente [11]. Por exemplo, dois
usuários podem estar usando a mesma frequência X mas terão slots de tempo diferentes
como é mostrado na Figura 7 :
Figura 7 - TDMA: Slots de tempo
É como se cada aparelho do usuário fosse desligado e ligado durante certo
período de tempo.
Em sistemas FDMA, todos os usuários tem acesso ao sistema
concomitantemente, mas eles utilizam partes diferentes do espectro de frequências para
comunicar. Com isso desde que cada usuário esteja utilizando uma frequência diferente
nenhum causará interferência no outro.
Sistemas CDMA utilizam códigos para fazer com que os dados de um usuário ao
serem transmitidos sejam ortogonais aos de outro usuário, porém diferente dos outros
dois tipos de sistemas citados acima, todos os usuários utilizam ao mesmo tempo e as
25
mesmas frequências para transmissão [11].
3.3 - SIMO e MISO – Single Input Multiple Output e Multiple Input e Single
Output Independente modo que os usuários dividem o espectro ou o tempo, ao se
movimentarem a potência do sinal varia desde uma pequena até uma grande escala,
dependendo da situação, e algumas vezes a qualidade do sinal sendo muito baixa
implica em inaceitáveis taxas de erro ou até mesmo falha completa na comunicação.
Para combater isso foi criada uma técnica que é chamada de Diversidade. A Diversidade
se baseia no uso de múltiplas cópias do mesmo sinal, onde o receptor pode escolher ou
até mesmo combinar estas cópias. A ideia por trás dessa técnica é que mesmo que uma
cópia do sinal tenha uma potência muito baixa é muito improvável que todas as cópias
também terão. Então, essa redundância gerada por estas múltiplas cópias do mesmo
sinal permite que a qualidade da comunicação se mantenha [11].
MISO e SIMO são técnicas baseadas no conceito de diversidade onde múltiplas
cópias de um mesmo sinal são transmitidas e então a superposição destes sinais são
recebidos por apenas uma única antena, no caso do MISO, ou quando uma única antena
transmite um único sinal e um conjunto de antenas recebe cada cópia deste sinal, SIMO
[10].
Existem diversas maneiras de utilizar estas cópias para obtermos uma melhor
eficiência na transmissão. Vamos considerar um cenário onde temos um celular
transmitindo um sinal para uma estação base com duas antenas, o sinal transmitido será
denotado como x e os sinais recebidos ser por cada antena y1 e y2:
𝑦1 = ℎ1 ∗ 𝑥 + 𝑛1 𝑦2 = ℎ2 ∗ 𝑥 + 𝑛2
Figura 8 - Sistemas SIMO
- 26 -
Onde h1 e h2 são coeficientes relativos a qualidade do canal entre o transmissor
e a antena 1 e antena 2 respectivamente. Além disso n1 e n2 são os sinais de ruído
recebido pelas duas antenas. É importante ressaltar que cada um desses “feixes”
independentes ou caminhos representa o que chamamos de beanforming [9].
Existem diversas maneiras de tratarmos estes sinais:
Selection Diversity - É um modo simples onde é escolhido o sinal com o maior
coeficiente de canal , e 𝑖 é o índice do canal escolhido.
𝑦𝑠𝑒𝑙 = max(|ℎ11|, |ℎ12|) ∗ 𝑥 + 𝑛𝑖
Equal gain combining – Os sinais são escalados por um peso (“phase weights”)
de modo que os sinais sejam coerentes e então possam ser casados corretamente.
𝑦𝑒𝑞𝑢𝑎𝑙 = 𝑢1𝑦1 + 𝑢2𝑦2 = (𝑢1ℎ11 + 𝑢2ℎ12) ∗ 𝑥 + (𝑢1𝑛1 + 𝑢2𝑛2)
Nota-se que caso ℎ11 e ℎ12 sejam iguais (quando as antenas estão muito
próximas, ℎ11 e ℎ12 tendem a ter valores cada vez mais próximos) a equação é
simplificada para 𝑦𝑒𝑞𝑢𝑎𝑙 = 2|ℎ11| ∗ 𝑥 , logo o sinal recebido será duas vezes maior que
o sinal que seria recebido caso tivéssemos apenas uma única antena.
3.4 - MIMO – Multiple Input e Multiple Output Diversidade espacial, considerado uma das soluções mais viáveis para a melhora
das taxas de comunicação sem fio, baseava-se no uso de múltiplas antenas em um dos
fins do sistema, ou no receptor ou no transmissor. A evolução dessa ideia trouxe o que
chamamos de MIMO, quando possuímos tanto no receptor tanto quanto no transmissor
múltiplas antenas criando várias cópias do sinal.
Para entender os benefícios de um sistema MIMO devemos utilizar dois pontos
de vista, primeiramente sobre a perspectiva de um único usuário, onde o objetivo é de
aumentarmos a taxa de transmissão entre a estação base e o seu celular, e em seguida
sobre a perspectiva de múltiplos usuários onde todos estão se comunicando ao mesmo
tempo e utilizando a mesma faixa de frequências.
3.4.1 - MIMO e suas perspectivas de usuários: Usuário único
Do ponto de visto de um usuário único, devemos ter como objetivo aumentar
suas taxas de transmissão e recepção. Isso pode ser alcançado de alguns modos. A
- 27 -
primeira solução seria aumentando a potência de modo que o sinal recebido seria muito
mais forte, porém além de acarretar em problemas de segurança, transmitir sinais com
alto valor de potência por dispositivos móveis, isso drenaria a bateria rapidamente,
causando também uma insatisfação do usuário. Outra maneira seria aumentando a banda
de frequência, porém hoje temos uma banda muito bem definida, em que as
transmissões devem ser feitas de modo que não interfiram em outras faixas de
frequência utilizadas para outros tipos de operações, acarretando em obstáculos
financeiros e legais para obter uma maior banda de transmissão [10] [11].
Temos então a utilização da tecnologia de múltiplas antenas, que trás em
conjunto com o aumento da diversidade espacial, uma mais confiabilidade na
transmissão, ou seja , uma taxa maior de bits corretos recebidos , trazendo assim
também um aumento na taxa de transmissão (data rate), utilizando a mesma banda de
frequência e sem aumentarmos a potência de transmissão [11].
3.4.2 - MIMO e suas perspectivas de usuários: Múltiplos Usuários - MU MIMO (Multi
User MIMO)
Em qualquer sistema de comunicação sem fio teremos mais de um usuário se
comunicando simultaneamente com a estação e como foi mencionado anteriormente os
usuários sempre foram separados pelo tempo, pela frequência ou simultaneamente a fim
de evitarmos qualquer tipo de interferência entre eles [11] [12].
Precisamos então, achar formas de organizar esses múltiplos usuários
simultaneamente no tempo e na frequência, e esta tecnologia com múltiplas antenas
vem para nos ajudar.
Vamos considerar o exemplo mais básico em que temos dois dispositivos
móveis em locais diferentes transmitindo para uma estação base com duas antenas
receptoras, vide Figura 9.
- 28 -
Figura 9 - Exemplo de um array simples de duas antenas
Os usuários M1 e M2 estão simultaneamente transmitindo os sinais 𝑥1𝑒 𝑥2.
Podemos representar o sistema como duas equações, uma para cada antena receptora
onde ℎ11 e ℎ12 são os coeficientes do canal entre os transmissores M1 e M2 e as antenas
receptoras.
𝑦1 = ℎ11𝑥1 + ℎ21𝑥2
𝑦2 = ℎ12𝑥1 + ℎ22𝑥2
O receptor pode então aplicar pesos, 𝑢1 e 𝑢2, referentes à qualidade do sinal
recebido por cada antena então combinar os sinais recebidos o a fim de ter um único
output 𝑦𝑜𝑢𝑡 :
𝑦𝑜𝑢𝑡 = 𝑢1𝑦1 + 𝑢2𝑦2 = (𝑢1ℎ11 + 𝑢2ℎ12)𝑥1 + (𝑢1ℎ21 + 𝑢2ℎ22)𝑥2
Podemos agora, definir os pesos de modo que, por exemplo, apenas o sinal
recebido pelo usuário M1 seja recebido e o do usuário M2 suprimido:
𝑢1ℎ11 + 𝑢2ℎ12 = 1
𝑢1ℎ21 + 𝑢2ℎ22 = 0
Ou seja, pela solução de um simples sistema linear de equações podemos
escolher os pesos de modo que seja possível isolar o sinal 𝑥1. Agora imagine que
podemos ter uma saída para cada usuário, de modo que possamos isolar cada usuário
apenas escolhendo os pesos corretos para cada antena.
- 29 -
Então o próximo passo seria aplicar um novo conjunto de pesos de modo que
teríamos apenas o sinal transmitido 𝑥2. Como no sistema da Figura 10 em que temos
apenas duas antenas e um set de pesos diferentes em que podemos separar os dado
transmitidos pelos dois usuários M1 e M2. Essa técnica é chamada de Space Division
Multiple Access (SDMA).
Figura 10 - Sistema utilizando SDMA
Esta é uma das diversas técnicas possíveis para isolar informações transmitidas
por dois usuários diferentes. Este exemplo simples ilustra a capacidade que sistemas
MIMO têm para trabalhar simultaneamente com diversos usuários.
3.4.3 - Condições para o funcionamento
É interessante ressaltar que existem alguns fatores que podem atrapalhar ou até
impossibilitar o uso de tal arquitetura dependendo de como é o canal e seus coeficientes.
Para analisar mais claramente vamos separar em três cenários diferentes ilustrados pela
Figura 11.
Figura 11 - Cenários de Operação e não operação de sistemas MIMO
- 30 -
Temos no cenário (a) , antenas muito próximas e com um caminho livre entre os
receptores e transmissores, que também estão muito próximos. Isso dificulta a
formação dos beans, pois será difícil de isolar os sinais já que eles estão tão próximos,
nesse caso a utilização do MIMO não seria possível ou eficiente [11].
Na Figura 11 (b) temos então o mesmo canal porém com um objeto, chamado
usualmente de scatter, que ajuda a criar caminhos em que o sinal pode se refletir.
Podendo então criar-se beans que explorem esses sinais que são refletidos e os sinais
que vão direto para os receptores. Nesse caso, é mostrado claramente como os sistemas
de múltipla entrada e múltipla saída exploram os multicanais criados por esses objetos
para transmitir os dados. Então neste caso é possível a utilização de sistemas MIMO,
aumentando assim a taxa de transmissão do sistema. Caso tivéssemos mais objetos,
outros caminhos seriam criados e poderiam também ser usados para aumentar a
diversidade espacial do canal [11].
Em seguida na Figura 11 (c) temos um objeto muito próximo do caminho direto e
usual do sinal. Como tanto o sinal refletido e o sinal direto estão muito próximos e
similares (podemos dizer que são altamente correlacionados), novamente é difícil que
haja a formação de beans, impossibilitando novamente o uso desta tecnologia em uma
situação como essa [11].
Podemos concluir então que a posição dos scatteres e a quantidade desses
objetos são importantes para que os sistemas MIMO consigam atingir sua total
eficiência. Essa quantidade de objetos é usualmente chamada de scattering richness.
Então os sistemas de múltipla entrada e saída surgiram da ideia de utilizar a maior
quantidade de caminhos possíveis, técnica conhecida como diversidade espacial do
canal, como já foi explicada anteriormente [11].
3.4.5 – Massive MIMO
Também chamado de Large-Scale Antenna System (Sistema de Antenas de
Larga Escala), Very Large MIMO ou de Hyper MIMO, é uma tecnologia que utiliza da
característica multi-usuário (Multi-User MIMO) aliada a um array de antenas na
estação base, que pode conter centenas ou até mesmo milhares de antenas que operam
de modo coerente e adaptativo [13].
- 31 -
(b)
(a) (c)
Figura 12 - (a) Array de 160 antenas criado na Universidade de Lund na Suécia. (b) Ilustração de um sistema Massive MIMO utilizando uma propagação direta (line-of-sight propagation), tanto para o uplink quanto
para o downlink. (c) Frame de uma transmissão Time Division Duplex (TDD) .
A comunidade científica vem apostando que para a próxima geração de sistemas
Wireless ou 5G, esta tecnologia trará ganhos significativos no consumo de energia, uma
maior transmissão de dados em conjunto com o maior número de usuários por estação
base e na confiabilidade da transmissão [14].
Originalmente pensado para operar utilizando Time Division Duplex (TDD),
comunicação dupla em que o sinal transmitido e o recebido são separados e alocados em
espaços de tempo diferente, já existem estudos para que seja também utilizado em
Frequency Division Duplex (FDD) [13].
A massiva quantidade de antenas auxilia a focar a energia da transmissão e da
recepção do sinal em regiões do espaço cada vez menores, o que trás significativos
benefícios no rendimento e na eficiência energética do sistema, especialmente em
ambientes com um número grande de usuários, dezenas ou centenas. Porém o
processamento do sinal tem um papel crucial para que um sistema de antenas de larga
escala seja realmente eficiente e traga os benefícios citados. A estação base aplica uma
combinação linear para discriminar os sinais transmitidos de cada terminal usuário, o
que exige um esforço e uma complexidade computacional. Existem algoritmos de
- 32 -
estimação de canal, estimação dos coeficientes de filtragem utilizados que podem
escalar cubicamente com o número de antenas [14].
3.5 – Informações sobre o Estado do Canal (CSI – Channel State
Information) No estudo de comunicações sem fios, a informação de estado do canal (CSI –
Channel State Information) refere-se a propriedades do canal de comunicação. Estas
informações descrevem como um sinal se propaga do transmissor para o receptor,
representando então o efeito combinado de, por exemplo, dispersão, desvanecimento e
decaimento de potência com a distância. O método é chamado de estimativa de canal. O
estudo do CSI possibilita a adaptação de transmissões às condições atuais de um canal,
o que é crucial para a obtenção de comunicação confiável e com altas taxas de
transmissão de dados.
O desempenho da transmissão de pende no conhecimento que o transmissor e o
receptor tem do canal. A partir deste capítulo assumiremos que os transmissores e os
receptores dos canais simulados conseguem rastrear perfeitamente as variações nos
canais. No transmissor, a aquisição destas informações não é simples, porém em alguns
casos a informação do canal é atualizada regularmente no transmissor que sabe
instantaneamente o valor do canal.
CSI no receptor; inclui todos os coeficientes dos canais vindo do transmissor
para o receptor. Essa informação é necessária para que uma decodificação ótima seja
efeituada. Na prática, o canal e a variância do ruído são estimados utilizando símbolos
pilotos incluídos no sinal enviado do transmissor.
CSI no transmissor; no geral o CSI do canal é mais difícil de ser obtido. Vamos
nomear A o transmissor e B o receptor. Em sistemas sem fio a aquisição dessa
informação depende geralmente de duas técnicas: realimentação (feedback), onde as
características do canal são realimentadas a partir das informações no receptor, e
reciprocidade do canal (channel reciprocity), técnica na qual consideramos que o canal
apresenta os mesmos coeficientes de A para B como de B para A, caso o canal seja
medido ao mesmo tempo e utilizando a mesma frequência [11].
3.6 – Análise da Capacidade do sistema. A capacidade do canal é um dos parâmetros mais importantes no desempenho de
um sistema de transmissão, ela estabelece o limite na taxa de bits que pode ser
transmitida através do canal. Este limite é obtido utilizando-se um modelo
- 33 -
probabilístico para o sistema de transmissão onde mensagens de natureza aleatória são
transmitidas em um canal, usando-se para isto um conjunto de sinais definidos de
acordo com um determinado esquema de codificação.
Nesta sessão vamos analisar como é feita a medida da capacidade de canais
invariantes no tempo, começando por sistemas SISO e em seguida partiremos para
casos com múltiplas antenas: MISO, SIMO e finalmente MIMO. Para as análises feitas
consideraremos que tanto o transmissor quanto o receptor conhecem as características
do canal.
3.6.1 – Capacidade de um sistema SISO
Vamos começar pelo caso fundamental, um sistema com única entrada e saída.
Figura 13 - Modelo de um sistema SISO [11]
Modelo do Sistema: A relação Entrada-Saída de um sistema SISO discreto e
invariante no tempo pode ser descrito pela seguinte equação:
𝑦(𝑘) = ℎ𝑥(𝑘) + 𝑛(𝑘)
Tempos então, h representando as características de um canal de propagação
independente no tempo. A potência em hx(k) é igual a potência de transmissão do sinal,
P̅|h|² e por fim, a potência do ruído é denotada por n(k) que é igual a σn2 . Assim,
temos a relação sinal ruído (Signal to Noise Ratio – SNR) igual a:
𝑆𝑁𝑅𝐴𝑊𝐺𝑁 =�̅�|ℎ|²
𝜎𝑛2
Finalmente, temos que a capacidade de um sistema SISO, considerando um
canal com adição de ruído branco gaussiano (Additive white Gaussian noise - AWGN),
é:
- 34 -
𝐶𝐴𝑊𝐺𝑁(𝑆𝑁𝑅𝐴𝑊𝐺𝑁) = 𝑙𝑜𝑔2(1 + 𝑆𝑁𝑅𝐴𝑊𝐺𝑁) (bits/símbolo)
3.6.2 – Capacidade de um sistema SIMO ou MISO
Quando o sistema tem múltiplas antenas no transmissor e uma única antena no
receptor, ele é chamado MISO Channel. Uma característica particular do sistema MISO
é que por um pré-processamento ótimo, se o canal é conhecido no transmissor, podemos
transformá-lo em um canal SISO equivalente. Neste esquema, apenas um símbolo é
enviado em cada tempo de transmissão.
Figura 14 - Modelo de um sistema MISO [11]
Modelo do Sistema: O sinal xi(k) é enviado de uma antena i através de um canal
hi, que corresponde aos coeficientes de cada canal, denotados como = 1, … , MT .
Finalmente temos o sinal recebido y(k), que já está adicionado do ruído n(k) :
y(k) = ∑ hi
MT
i=1xi(k) + n(k) = hTx(k) + n(k)
Temos h = [h1 … hMT] T e consequentemente para o sinal x(k) =
[x1(k) … xMT(k)]T .
O sinal transmitido xi(k) é escalado por um coeficiente hi∗ para ser casado com o
canal hi , antes de ser enviado pela antena i. Na saída do bloco de pré-processamento
tempos que normalizar o sinal, para atingir a potência total P de transmissão: x̃(k) =
∑ E|xi(k)|MTi=1 ² ≤ P̅ .Consequentemente o somatório dos sinais que passa por cada
- 35 -
antena, x̃(k) tem uma potência transmitida igual ou menor a P̅, finalmente o sinal
transmitido pelas antenas é:
xi(k) = hi
∗
||h||x̃(k)
Na antena receptora, temos a adição dos sinais ,feita de modo construtiva.
Percebemos que cada sistema, de antena transmissora e antena receptora, funcionam
como um sistema SISO escalado, onde teremos mais potência alocada para o canal com
menor sinal ruído, ou canais mais fortes. Podemos então, utilizar as seguintes equações,
para denotar, tanto um sistema MISO quanto um sistema SIMO, com entrada x̃(k) e
saída y(k) :
y(k) = ||h|| x̃(k) + n(k) SNRMISOTime Invariant =
P̅||h||²
σn2
Finalmente, teremos que a capacidade do canal pode ser medida através da
seguinte fórmula:
CMISOTI = log2 (1 +
P̅||h||2
σn2
) (bits/transmissão)
Para um canal invariante no tempo com CSIT, a capacidade de um sistema
MISO será igual a um sistema SIMO. Como resultado, vemos que ter múltiplas antenas
no receptor ou n otransmissor trará os mesmo benefícios. Porém vale ressaltar que essa
afirmação se torna falta para sistemas com fading onde o CSIT não é conhecido [11].
3.6.3 – Capacidade de um sistema MIMO
Para sistemas SIMO e MISO invariantes no tempo, um único símbolo é enviado
por período de transmissão. E para atingir uma qualidade de transmissão ótima temos
que avaliar cada canal e cada antena levando em conta a qualidade do canal. Quando
várias antenas estão presentes simultaneamente no transmissor e no receptor (MIMO),
vários símbolos são enviados simultaneamente por período de transmissão. A
transmissão e recepção de cada símbolo baseiam-se em um pré e pós-processamento
que é correspondido, matematicamente, a uma estrutura subjacente do canal com base
na sua decomposição em valores singulares (Singular Value Decomposition - SVD).
Este pré e pós-processamento permite a separação entre as rotas espaciais de
- 36 -
propagação do sinal, fazendo com que cada transmissão de símbolo seja entendida
como um canal SISO (várias antenas de transmissão e recepção criam múltiplas e
diferentes rotas espaciais). Essas múltiplas rotas espaciais são independentes e o sistema
MIMO se torna equivalente a um conjunto de canais SISO. E então teremos que a
capacidade do sistema MIMO torna-se a soma da capacidade de cada canal SISO. Em
resumo, quando o CSIT e CSIR são conhecidos, um canal MIMO pode ser considerado
equivalente a múltiplos canais SISO [11].
3.6.3.1 – Decomposição em valores singulares de H
A decomposição SVD da matriz H, que representa o canal, é uma ferramenta
fundamental para o entendimento do sistema, com está técnica podemos descobrir a
quantidade de streams que podem ser multiplexadas simultaneamente e fornece uma
maneira simples de descobrir a capacidade do canal como um todo, sendo a somatória
da capacidade dos múltiplos canais SISO em que podemos decompor este sistema
MIMO.
Figura 15 - Modelo de um sistema MIMO.
Um sistema MIMO pode ser representado pelo modelo acima, onde teremos 𝑀𝑅 ,
a quantidade de antenas receptoras e 𝑀𝑇 o número total de antenas transmissoras.
Podemos então definir que em um tempo k, a matrix 𝐻(𝑘) de dimensões 𝑀𝑅 × 𝑀𝑇 :
- 37 -
Por conseguinte, teremos que a relação entrada-saída do sistema, pode ser
descrita por:
𝑦(𝑘) = 𝐻(𝑘)𝑥(𝑘) + 𝑛(𝑘)
Para as os próximos cálculos vamos assumir que 𝑛(𝑘), o ruído no canal, é uma
variável aleatória gaussiana, estatisticamente independente, de média zero e variância
𝜎𝑛2 e que o ruído na antena 𝑗, 𝑛𝑗(𝑘) = 𝑅𝑒 (𝑛𝑗(𝑘)) + 𝐼𝑚(𝑛𝑗(𝑘)). Assumiremos também
que o ruído é um processo independente e identicamente distribuído (i.i.d) onde teremos
a mesma variância 𝜎𝑛2 em todas as antenas .
A decomposição SVD da matriz 𝐻(𝑘) é simples, 𝐻 = 𝑈𝛬𝑉𝐻 e deve seguir o
seguinte esquema:
Figura 16 - Decomposição SVD da matriz H [11].
Na figura acima , vemos como a decomposição é feito para dois casos , quando
𝑀𝑅 > 𝑀𝑇 e para 𝑀𝑅 < 𝑀𝑇. Note que a matriz 𝛬 é uma matriz 𝑀𝑅 × 𝑀𝑇 diagonal
com números reais não negativos 𝜆𝑘 ,chamados de valores singulares, onde k= 1 , … ,
𝑀𝑚𝑖𝑛 and 𝑀𝑚𝑖𝑛 = min (𝑀𝑅 , 𝑀𝑇) . Os valores 𝜆𝑘 são chamados de autovalores do canal
e devem ser ordenados decrescentemente : 𝜆1 ≥ 𝜆2 , 𝜆2 ≥ 𝜆3 , … , 𝜆𝑘−1 ≥ 𝜆𝑘 .
No MATLAB , para achar a decomposição SVD de uma matriz, basta utilizar o
comando:
[U,S,V] = svd(H)
Onde teremos a matriz S sendo a matriz 𝛬. Para utilizar o algoritmo que será
descrito a seguir utilizaremos apenas esta matriz.
3.6.3.2 – Rank da matriz do Canal
O número de valores singulars diferentes de zero é chamado de rank da matriz
𝑟𝐻. Ele representa o número de linhas e colunas independents da matriz H, teremos
sempre que 𝑟𝐻 ≤ 𝑀𝑚𝑖𝑛 = min (𝑀𝑅 , 𝑀𝑇). Para a análise de um sistema MIMO, este
- 38 -
dado é importante pois denota a quantidade de streams independentes que podem
ser multiplexadas simultaneamente [11].
3.6.3.3 – Valores Singulares e Energia
A energia no canal pode ser expressa por : ∑ ∑ |ℎ𝑖𝑗|²𝑀𝑅𝑗=1
𝑀𝑇𝑖=1 ou reescrita como
𝑡𝑟(𝐻𝐻𝐻) , note que tr() é o traço da matriz ,o traço de uma matriz 𝐻𝐻𝐻 (que é soma
dos seus valores próprios (autovalores), elementos na diagonal da matriz),e 𝐻𝐻 é o
transposto Hermitiano (que é o mesmo que a matriz transposta seguido do conjugado de
cada elemento) da matriz H [11].
Utilizando a relação 𝐻𝐻𝐻 = 𝑈𝛬²𝑈𝐻 e 𝑡𝑟(𝐻𝐻𝐻) = 𝑡𝑟(𝐻𝐻𝐻) , a expressão
pode ser simplificada para:
𝑡𝑟(𝐻𝐻𝐻) = ∑ 𝜆𝑘2
𝑟𝐻
𝑘=1
Resumindo a fórmula pode ser expressa da seguinte maneira
𝑡𝑟(𝐻𝐻𝐻) = ∑ ∑ |ℎ𝑖𝑗|²𝑀𝑅
𝑗=1
𝑀𝑇
𝑖=1= ∑ 𝜆𝑘
2𝑟𝐻
𝑘=1
3.6.3.4 – Algoritmo de Waterfilling e capacidade de sistemas MIMO
Para que seja possível determinar a capacidade de um sistema MIMO ainda é
necessário um elemento importante, a quantidade de potência transmitida em cada canal
independente (subcanal ou eigenchannel). Vale lembrar que um sistema de canais
MIMO, pode ser decomposto em um conjunto de subcanais, independentes e com sua
própria relação sinal – ruído (SNR). Para achar estes valores utilizaremos uma técnica
chamada Algoritmo de Waterfilling.
Primeiramente vamos definir a seguinte relação:
𝛾𝑘 =𝜆𝑘
2
𝜎𝑛2
, 𝑘 = 1, … , 𝑟𝐻
Além disso temos que 𝑃𝑘 é a quantidade de potência transmitida em cada
subcanal. Teremos então que 𝑃𝑘𝛾𝑘 = 𝑆𝑁𝑅 do 𝑘é𝑠𝑖𝑚𝑜 eigenchannel. Podemos então
utilizar a fórmula para calcular a capacidade de um canal SISO, já que cada sub canal é
- 39 -
independente e pode ser tratado como um. Temos então que a capacidade de cada
subcanal do sistema MIMO é igual a 𝑙𝑜𝑔2(1 + 𝑃𝑘𝛾𝑘 ).
Ao utilizar o algoritmo referido acima, vamos ajustar 𝑃𝑘 de modo a maximizar o
valor da capacidade do sistema, porém precisamos notar que o somatório das potências
transmitidas em cada subcanal deve respeitar a seguinte igualdade : ∑ 𝑃𝑘 ≤ 𝑃′𝑟𝐻𝑘=1 ,onde
𝑃′ é o total de potência disponível para o sistema [11].
Temos então que a capacidade pode ser expressa pela seguinte formula:
𝐶𝑀𝐼𝑀𝑂𝑇𝐼 = ∑ 𝑙𝑜𝑔2(1 + 𝑃𝑘𝛾𝑘 )
𝑟𝐻
𝑘=1
O que nos resta agora é achar o valor de 𝑃𝑘, que será um resultado da seguinte
expressão:
∑ 𝑃𝑘 = ∑ (1
𝛾𝑜−
1
𝛾𝑘 )
𝑟𝐻
𝑘=1
+
= 𝑃′𝑟𝐻
𝑘=1
. : 𝑃𝑘 = (1
𝛾𝑜−
1
𝛾𝑘 )+
Onde 𝛾𝑜 é o valor de corte que será estipulado e utilizado durante o algoritmo
para determinar o quanto de potência poderá ser alocada para cada antena.
Graficamente e após o exemplo será mais fácil de entender a importância de
cada variável deste algoritmo e como ele funciona.
3.6.3.5 – Exemplo numérico do algoritmo de Waterfilling
Vamos considerar um exemplo numérico de um sistema MIMO 4x4 com a
potência máxima que pode ser transmitida fixada em 𝑃′ = 1 W e variância 𝜎𝑛2 ≈ 0.3162
com seguintes autovalores:
𝜆1 2 = 3.2 𝜆2
2 = 1.2 𝜆32 = 0.44 𝜆4
2 = 0.24
Primeiramente, os valores 1
𝛾𝑘 e os valores de corte
1
𝛾𝑜 são calculados. O
próximo passo é verificar se o valor de corte é maior que o que foi encontrado para o
inverso do SNR (1
𝛾𝑘) de cada subcanal, caso algum valor seja maior, nenhuma potência
é alocada (𝑃𝑘=0) a este subcanal, sobrando então mais potência para ser alocada aos
outros eigenchannels. O valor de corte é então recalculado, retirando o que não teve
- 40 -
potência alocada. Novamente é verificado a inequação 1
𝛾𝑘>
1
𝛾𝑜 e são excluídos os
subcanais que tiverem 1
𝛾𝑘>
1
𝛾𝑜. O processo de reajustar o valor de corte e verificar o
nível é repetido até não sobrarem canais em que o inverso do SNR é maior que o
inverso do valor de corte, como mostrado na tabela abaixo [11].
Tabela 4 - Passo a passo do funcionamento do algoritmo de Waterfilling
No gráfico abaixo vemos, como as colunas são o inverso da relação sinal/ruído
(1
𝛾𝑘), podemos então, concluir que quanto maior for o SNR, menor será a o tamanho da
coluna no gráfico. A potência alocada pode ser vista como um nível de água dentro de
um recipiente, começando do zero e subindo até que toda a potência disponível seja
alocada nos canais que ficaram submersos.
- 41 -
Figura 17 - Exemplo gráfico do algoritmo sendo utilizado [11]
A primeira coluna a ficar debaixo d’água é a com o menor nível de ruído, o
subcanal com melhor qualidade, ou seja, com maior SNR, consequentemente, este será
o com a maior parcela alocada da potência disponível ao sistema. O segundo terá a
segunda maior parcela da potência alocada e assim continuamos até que toda potência
seja distribuída aos melhores canais.
Como a quantidade de potência alocada aos canais com níveis de ruído mais
baixo( 𝑃1 + 𝑃2 + 𝑃3 + ⋯ + 𝑃𝑟𝐻= 𝑃′) é maior, o algoritmo pode interpretar que não é
necessário que alguns canais tenham potência alguma alocada (𝑃𝑘=0), já que o nível de
ruído está demasiadamente alto. Não é sensato alocar potência e usa-lo para transmitir
qualquer tipo de dado, pois qualquer informação enviada seria corrompida pelo ruído e
se tornaria inelegível pelo receptor.
Dependendo nos níveis de ruído dos canais, podemos chegar ao ponto de alocar
toda potência em apenas um canal, quando temos uma erlação SNR muito baixa, porém
isto será melhor explicado mais a frente.
É importante notar que, neste exemplo, a parte sombreada em cinza no gráfico, é
correspondente a potência alocada no subcanal 1 e 2, respectivamente, 𝑃1 =1
𝛾𝑜−
1
𝛾1 e
𝑃2 =1
𝛾𝑜−
1
𝛾2 , onde 𝛾𝑜 é o ultimo reajustado no 5° passo. Novamente, vemos que os
eigenchannels 3 e 4 não tiveram potência alguma alocada (𝑃3 = 𝑃4 = 0).
Podemos então considerar que para uma alta relação sinal/ruído (SNR), a
potência alocada para os subcanais será muito similar. Acharemos a capacidade do
sistema utilizando a seguinte fórmula:
- 42 -
𝐶𝑀𝐼𝑀𝑂𝑇𝐼 ≈ ∑ 𝑙𝑜𝑔2(1 +
𝑃′
𝑟𝐻𝛾𝑘 )
𝑟𝐻
𝑘=1
Que pode ser aproximada para:
𝐶𝑀𝐼𝑀𝑂𝑇𝐼 ≈ 𝑟𝐻𝑙𝑜𝑔2(
𝑃′
𝑟𝐻𝛾𝑘 )
E para baixos valores da relação sinal/ruído teremos que a maior parte da
potência será alocada ao canal de melhor qualidade, ou seja, o subcanal com 𝜆𝑚𝑎𝑥,
consequentemente teremos a fórmula para calcular a capacidade aproximada para:
𝐶𝑀𝐼𝑀𝑂𝑇𝐼 ≈ 𝑙𝑜𝑔2(
𝑃′
𝜎𝑛2
𝜆²𝑚𝑎𝑥 )
Temos então, duas fórmulas aproximadas de capacidade para dois cenários
diferentes, para uma alta relação sinal ruído e para baixa.
- 43 -
Capítulo 4
Implementação e análise do algoritmo de Waterfilling
4.1 – Introdução Neste capítulo, vamos analisar, em detalhes, o algoritmo criado e desenvolvido
para este projeto, desde seus casos de uso até os resultados obtidos para entendermos
sua real eficiência na alocação de potência em sistemas MIMO.
Este algoritmo foi desenvolvido a partir de um código criado em Outubro de
2006 pelo Dr. Hamid Ramezani [15]. O código foi modificado e melhorado para atingir
as necessidades desse projeto.
4.2 - Implementação do código.
4.2.1 – Variáveis de entrada e saída.
A função criada tem como nome “waterfillingUFRJ ” (o código completo está
na sessão Apêndice) e para melhor entendimento vamos destrinchar o código em partes.
Primeiramente vamos entender como ela deve ser utilizada, os parâmetros
necessários, para faze-la funcionar corretamente e posteriormente entenderemos seu uso
e os resultados obtidos.
Para que a função seja utilizada, é necessário que 5 argumentos de entrada sejam
preenchidos como podemos ver a seguir:
function [capacity , allocatedPower] = waterfillingUFRJ (...
type,totalPower,matrix,BW,No)
“type” refere-se ao tipo de matriz que vamos usar para caracterizar o
canal. Nesta função existem duas possibilidades como entrada:
“eigenmodes” ou “channelmatrix”. No primeiro caso, deve ser ter como
input no argumento de entrada “matrix” , deve ser uma vetor contendo os
valores singulares não negativos, 𝜆𝑘 , que caracterizam a matriz de um
canal, bem como explicado na sessão 3.6.3.1 desta pesquisa, onde k= 1 ,
… , 𝑀𝑚𝑖𝑛 e 𝑀𝑚𝑖𝑛 = min (𝑀𝑅 , 𝑀𝑇), sabendo que 𝑀𝑅𝑒 𝑀𝑇 são a
quantidade de antenas receptoras e transmissoras do sistema MIMO em
questão . No caso de termos como input deste argumento a palavra
- 44 -
“channelmatrix” , então devemos utilizar no argumento “matrix” uma
matriz 𝐻(𝑘) de dimensões 𝑀𝑅 × 𝑀𝑇. A matriz 𝐻(𝑘) representa a
informação de estado do canal (CSI – Channel State Information) como
citado na sessão 3.5 deste estudo.
“totalPower” representa a quantidade de potência disponível para
utilizarmos neste sistema para transmitir os dados pelos canais e
subcanais. O valor de entrada deve ser em watts.
“matrix” é onde descrevemos as características do canal ,seja com
valores singulars ou com uma matriz 𝐻(𝑘) representando a qualidade do
canal. Essa variável vai conter todas as informações do canal. Ao
utilizarmos a variável “type” = “channelmatrix”, é necessário uma etapa
de pre-processamento onde iremos extrair os valores singulars,
autovalores, 𝜆𝑘 , utilizando a técnica de decomposição por valores
singulares (SVD – Singular Values Decomposition) . Durante os teste
realizados, veremos que utilizaremos uma distribuição do tipo Rayleigh
para simular as características dos canais, ou seja para gerar a matriz
𝐻(𝑘) ou até mesmo o vetor contendo os eigenvalues.
“BW” representa a largura da banda utilizada, o valor deve ser medido
em Hertz (Hz).
“noiseDensity” é o argumento que devemos incluir a densidade espectral
da potência do ruído no canal, este valor deve ser em watts por Hertz
(watt/Hz).
Agora que já entendemos os argumentos de entrada da função podemos ver
como ela deve ser utilizada com os dois exemplos a seguir, um para cada caso de uso:
1. “waterfillingUFRJ ('eigenmodes',1e-5,random('rayleigh',1,1,4),1e6,1e-11)”
2. “waterfillingUFRJ ('channelmatrix',1e-4,random('rayleigh',1,8,8),1e8,1e-11)”
O primeiro exemplo corresponde a um sistema com as seguintes características:
tipo de matriz "eigenmodes", que é gerado por distribuição aleatória Rayleigh (função
do MATLAB utilizada para gerar matrizes ou vetores com o tipo de distribuição
- 45 -
mencionada), além disso, temos -20dBm de potência disponível, -80dB de densidade de
ruído e uma largura de banda de 1Mhz em um sistema MIMO 4x4.
Utilizaremos uma função “random('rayleigh',1,M,N)” para gerar a matriz do
canal, onde teremos M e N como o número de antenas transmissoras e receptoras
respectivamente.
O segundo é um sistema com matriz tipo "channelmatrix", que é gerado por
distribuição aleatória de Rayleigh, tem -10dBm de potência disponível, -80dBm de
densidade de ruído e uma largura de banda de 100Mhz em um sistema MIMO 8x8.
Agora vamos aos argumentos de saída, que são o resultado que o algoritmo nos
devolverá:
“allocatedPower” será a matriz resultado que trará a quantidade de
potência que deve ser alocada para cada canal, os valores retornados
serão em watts.
“capacity” é o valor da capacidade do canal medida utilizando as
técnicas já mostras na sessão 3.6.3 – Capacidade de um sistema MIMO,
Técnica conhecida como Shannon Capacity onde basicamente teremos
𝐶 = 𝑙𝑜𝑔2{1 + 𝑃𝑘𝛾𝑘} como explicado anteriormente.
4.2.2 – Funcionamento do código
O próximo passo é verificar e validar as variáveis de entrada para que todas
atendam os requisitos corretos como as dimensões das matrizes de entrada.
Como mencionado anteriormente, no caso da variável “matrix” ter como entrada
uma matriz 𝐻(𝑘) de dimensões 𝑀𝑅 × 𝑀𝑇 , teremos que decompô-la utilizando a
técnica de SVD e acharemos na matriz 𝛬 os auto valores, 𝜆𝑘 , do canal, que descrevem
basicamente a qualidade de cada subcanal. Para prosseguirmos, agora que já temos os
valores singulares do canal ordenados em ordem decrescente na matriz 𝛬 e o valor a
potência do ruído podemos achar a seguinte relação:
𝛾𝑘 =𝜆𝑘
2
𝜎𝑛2
Atribuiremos ao nome de CNR (Channel Noise Ratio). O CNR será utilizado na
fórmula para calcular o a potência alocada temporária 𝑃′, em cada ciclo do algoritmo, e
a final 𝑃𝑘 para cada subcanal.
- 46 -
O algoritmo achará uma potência alocada temporária, que será corrigida a cada
ciclo do código, utilizando como base para seu ajuste a retirada de subcanais que não
obedeçam a inequação 1
𝛾𝑜−
1
𝛾𝑘≤ 0. Ao fim da execução do código teremos a potência
alocada em cada subcanal. Estes e os próximos passos são descritos nas sessões 3.6.3.4
– Algoritmo de Waterfilling e capacidade de sistemas MIMO e na sessão 3.6.3.5 –
Exemplo numérico do algoritmo de Waterfilling, onde é possível encontrar um exemplo
de como o algoritmo funciona.
4.3 – Análise e Resultados
Para validarmos o algoritmo, os testes foram realizados em dois cenários, um
com alto Signal to Noise Ratio ,ou seja, onde o canal apresentava uma boa qualidade e
outro cenário com um SNR baixo.
4.3.1 – Alta Relação sinal Ruído
Neste cenário, simulamos um sistema com as seguintes características:
o MIMO 8x8
o Available Power = 1mW
o Noise Density =10p Watts/Hz
o Bandwidth = 1MHz
Deste modo, podemos utilizar a função waterfillingUFRJ com os inputs da
seguinte maneira:
[capacity,allcPower]=waterfillingUFRJ ('eigenmodes',1e-3,random('rayleigh',2,1,8),1e6,1e-11)
Vemos que a função irá retornar a capacidade do sistema e a quantidade de
potência que deve ser alocada em cada subcanal, perante o sistema criado. Vale lembrar
que a potência total está limitada a P’, e neste exemplo será de 1mW que é a potência
disponível para ser distribuída entre os canais.
- 47 -
Figura 18 - Potência alocada- Alto SNR
Na Figura 18 - Potência alocada- Alto SNR vemos o resultado obtido utilizando
o Algoritmo. Para facilitar a visualização a primeira figura, foi separada em dois
gráficos, um com o CNR (Channel Noise Ratio), barras em azul, que representam
basicamente 1/SNR, ou seja quanto maior a barra mais ruído apresentado. E em barras
vermelhas, a potência alocada para cada subcanal.
Vemos como o subcanal 8 é o de pior qualidade, com mais ruído associado.
Consequentemente o algoritmo dividiu a maior parte da potência disponível nos
primeiros subcanais, que são os de melhor qualidade. Porém como a Relação sinal ruído
era muito alta, a quantidade de ruído em todos os subcanais era muito pequena
comparada com a quantidade de potência disponível que poderia ser alocada ao sistema.
Tivemos então uma divisão de potência quase que constante onde todos receberam uma
quantidade muito similar para executar sua transmissão.
Como mostrado na sessão 3.6.3.5 – Exemplo numérico do algoritmo de
Waterfilling, a capacidade em um sistema com alta relação sinal ruído, escala
linearmente com o rank da matriz 𝐻(𝑘) e é aproximadamente 𝑟𝐻 vezes a capacidade de
apenas um dos subcanais :
𝐶𝑀𝐼𝑀𝑂𝑇𝐼 ≈ 𝑟𝐻𝑙𝑜𝑔2(
𝑃′
𝑟𝐻𝛾𝑘 )
Abaixo vemos a quantidade de potência alocada para cada um dos 8 subcanais
deste sistema MIMO e a capacidade utilizando o algoritmo e quanto obteríamos caso
- 48 -
dividíssemos igualmente a potência entre os subcanais. É fácil perceber que em um
canal com uma boa qualidade a diferença entre utilizarmos o algoritmo e apenas dividir
a potência igualmente é ínfima, neste caso o algoritmo ajudou em uma melhora de
menos de 1%. Porém no próximo caso de uso, em um canal com uma alta quantidade de
ruído, vamos conseguir verificar a real eficiência do algoritmo.
Tabela 5 - Potência Alocada - Alto SNR
4.3.2 – Baixa Relação Sinal Ruído
MIMO 8x8
Available Power = 1mW
Noise Density =1p Watts/Hz
Bandwidth = 1MHz
Desta vez iremos utilizar o algoritmo em um cenário que enfrenta uma alta
quantidade de ruído. O input para a função deve ser feito desta maneira:
[cap,alc]=waterfillingUFRJ ('channelmatrix',1e-3,random('rayleigh',2,8,8),1e8,1e-9)
Segundo as características do canal, ele apresenta uma baixa relação sinal ruído.
Após o algoritmo ser executado, toda a potência disponível foi alocada nos primeiros 4
subcanais, e os últimos 4 não receberam potência alguma. Isso aconteceu pois a
1 4,6944 0,1334
2 4,5175 0,1334
3 4,0522 0,1333
4 3,2442 0,1329
5 3,2426 0,1329
6 0,7645 0,1168
7 0,6779 0,1121
8 0,5908 0,1052
46,1679
46,1306
Capacidade bits/s (Waterfilling)
Capadidade bits/s (Pot. Dividida igualmente)
Subcanal EigenmodesPotência Alocada
(x 1e-03*)
- 49 -
quantidade de ruído era tão grande nestes subcanais que era mais vantajoso aumentar a
potência nos que possuem uma qualidade melhor , então a maior quantidade de potência
foi alocada ao subcanal com melhor qualidade em relação ao ruído, fazendo com que
não desperdiçássemos potência em subcanais que apresentavam uma distorção maior.
Deste modo aumentamos a eficiência do sistema por alocar potência nos subcanais que
apresentam uma maior chance de enviar os dados até o receptor com qualidade, sem
sofre uma grande distorção.
Figura 19- Potência alocada- Baixo SNR
Tabela 6 - Potência alocada- Baixo SNR
Acima vemos que como a qualidade do canal era relativamente pior que o
anterior, a capacidade de transmissão é afetada também, porém utilizando o algoritmo
conseguimos atingir 6,5 bits/s de capacidade, 19% maior do que se tivéssemos dividido
a potência disponível igualmente entre os subcanais. Desta maneira, conseguimos
1 3,8227 0,3251
2 3,4788 0,3109
3 2,2772 0,2007
4 2,0833 0,1632
5 1,5308 0,0000
6 1,3734 0,0000
7 1,2611 0,0000
8 1,1412 0,0000
6,5775
5,3298
Capacidade bits/s (Waterfilling)
Capadidade bits/s (Pot, Dividida igualmente)
Subcanal EigenmodesPotência Alocada
(x 1e-03*)
- 50 -
mostrar o quanto a simples e correta alocação de potência feita pelo algoritmo pode
beneficiar o sistema.
Vamos testa-lo mais uma vez, porém em um cenário com uma quantidade de
ruído extremamente alta, veremos que o algoritmo irá dividir a potência de uma maneira
peculiar, porém será provado que aumentará a eficiência do sistema em comparação
com uma divisão igualitária de potência entre os subcanais.
Figura 20 - Alocação de Potência - Baixo SNR - 2
Neste exemplo, a quantidade de ruído é muito superior a quantidade de potência
que poderia ser alocada a cada subcanal. O algoritmo então alocou toda potência
disponível em apenas uma antena já que foi verificado o alto nível de ruído em todos os
subcanais.
Tabela 7 - Alocação de Potência - Baixo SNR - 2
Ainda que a capacidade de transmissão seja muito baixa, devido aos altos níveis
de ruído, temos que com o uso do algoritmo elevamos em 49% a eficiência de
1 6,1853 0,0100
2 5,5208 0,0000
3 5,2789 0,0000
4 4,2324 0,0000
5 3,4613 0,0000
6 2,8997 0,0000
7 2,6853 0,0000
8 2,2128 0,0000
0,1732
0,0879
Capacidade bits/s (Waterfilling)
Capadidade bits/s (Pot, Dividida igualmente)
Subcanal EigenmodesPotência Alocada
(x 1e-03*)
- 51 -
transmissão, ou seja, em casos como este, sim é mais eficiente alocar toda a potência em
apenas um subcanal, ao invés de utilizarmos todas as antenas disponíveis com níveis de
potência igualmente divididos.
Para casos como este, já que a capacidade é calculada em cima do subcanal com
melhor qualidade em relação ao ruído, podemos então aproximar o cálculo da
capacidade para a fórmula abaixo como explicado na sessão 3.6.3.5 – Exemplo
numérico do algoritmo de Waterfilling
𝐶𝑀𝐼𝑀𝑂𝑇𝐼 ≈ 𝑙𝑜𝑔2(
𝑃′
𝜎𝑛2
𝜆²𝑚𝑎𝑥 )
4.4 – Algoritmo de Waterfilling em sistemas Massive MIMO
Massive MIMO, como explicado anteriormente, é um tipo de uso de sistemas
com múltiplas antenas em que a quantidade de transmissores e receptores é
extremamente grande. Esta tecnologia vem sendo amplamente estudada e tem-se que
este é o futuro das comunicações agregando eficiência e confiabilidade nas transmissões
de dados nas próximas gerações de sistemas sem fio.
Vamos dividir novamente em dois casos, com alto e baixo SNR. Para cenários
com boa qualidade de canal, veremos mais uma vez que os subcanais terão uma
potência alocada muito similar entre eles e quanto maior o número de antenas, quanto
maior M e N, menor será a diferença entre a potência alocada entre os subcanais. Em
cenários com baixo ruído, onde o sistema pode efetivamente trabalhar com altas taxas
de multiplexação de dados, veremos como na prática como a quantidade de antenas para
um mesmo sistema com a mesmas características de canal pode aumentar a capacidade
de transmissão. Já provamos previamente em ambientes com alto SNR, a capacidade
escala com o rank da matriz 𝐻(𝑘) seguindo a aproximação abaixo:
𝐶𝑀𝐼𝑀𝑂𝑇𝐼 ≈ 𝑟𝐻𝑙𝑜𝑔2(
𝑃′
𝑟𝐻𝛾𝑘 )
E o rank da matriz escala com a quantidade de antenas transmissoras M e de
receptoras N, ou seja , a capacidade do canal aumentará conforma o número de antenas
no sistema MIMO teremos e ai que se baseia o conceito de diversidade espacial que foi
explicado anteriormente.
Os sistemas MIMO 5x5, 50x50, 500x500 e 5000x5000 simulados a seguir têm
as mesmas características:
- 52 -
o Available Power = 1mW
o Noise Density =10p Watts/Hz
o Bandwidth = 1MHz
Figura 21 - Sistemas MIMO 5x5, 50x50, 500x500 e 5000x5000 – Alto SNR
Tabela 8 - Sistemas MIMO 5x5, 50x50 , 500x500, 5000x5000 – Alto SNR
MIMO
Capacidade
(Igualmente
distribuida) bits/s
Capacidade
(Waterfilling)
bits/s
Variação
(%)
5x5 21,037 21,248 1,00%
50x50 316,500 317,800 0,41%
500x500 4.919,500 4.920,700 0,02%
5000x5000 32.889,800 32.893,800 0,01%
Com estes dados, fica nítido o quando a quantidade de antenas aumenta a
capacidade de transmissão do sistema e como em casos como este a distribuição
igualitária de potência ou o uso do algoritmo de Waterfilling tem um efeito muito
parecido sobre a capacidade de sistema.
Para visualizarmos melhor como a capacidade se comportaria em um cenário
com boa relação sinal ruído, foi criado o gráfico abaixo, onde simulamos sistema
MIMO 2x2 até 12000x12000 com as mesmas características de canal, variando apenas a
- 53 -
quantidade de antena em cada sistema. Novamente, é notado que a quantidade de
antenas tem direta influência no valor da capacidade.
Figura 22 - Capacidade x N° de antenas no MIMO em um ambiente com alto SNR
Vamos agora fazer o mesmo para sistemas com uma baixa relação sinal ruídos,
os sistemas MIMO 5x5, 50x50, 500x500 e 5000x5000 simulados a seguir têm as
seguintes características:
o Available Power = 1mW
o Noise Density =1n Watts/Hz
o Bandwidth = 1MHz
Já que a capacidade de multiplexação foi reduzida, devido à alta potência de
ruído presente nos subcanais, utilizar uma alocação de potência igual para todas as
antenas, faz com que muita energia seja desperdiçada em canais, que a princípio, não
conseguirão entregar ao receptor dados corretos devido à distorção exercida pelo ruído
presente.
É neste momento que veremos a real eficiência do algoritmo de Waterfilling e
como a quantidade de antenas neste momento, ou seja, a diversidade espacial do canal,
não irá ter tanto influência na eficiência como no cenário anterior.
- 54 -
Figura 23 - Sistemas MIMO 5x5, 50x50, 500x500 e 5000x5000 - Baixo SNR
Tabela 9- Sistemas MIMO 5x5, 50x50, 500x500 e 5000x5000 - Baixo SNR
MIMO
Capacidade
(Igualmente
distribuida) bits/s
Capacidade
(Waterfilling)
bits/s
Variação
(%)
5x5 8,4732 8,5656 1,09%
50x50 9,5119 15,8791 66,94%
500x500 10,9851 30,2364 175,25%
5000x5000 11,7459 49,2037 318,90%
Seguindo a Tabela 9- Sistemas MIMO 5x5, 50x50, 500x500 e 5000x5000 - Baixo SNR,
vemos como a capacidade do sistema se comporta utilizando o algoritmo de
Waterfilling e dividindo a potência igualmente entre as antenas. A potência foi alocada
aos subcanais com melhor qualidade. Mesmo que alguns canais não tenham recebido
nenhuma potência para transmissão a forma que a potência foi alocada, prioriza os
canais com melhor qualidade, aumentando assim a eficiência energética do sistema e
garantindo uma transmissão mais confiável.
Neste último caso, a relação sinal ruído era baixa, porém, ainda era possível
encontrar subcanais com alguma qualidade para se alocar a potência. Vemos que a
- 55 -
capacidade continua escalando com a quantidade de antenas do sistema, mesmo que
ainda em proporção menor que no caso em que temos uma alta relação sinal-ruído.
Vemos novamente que a fórmula da capacidade continua escalando com o rank da
matriz 𝐻(𝑘).
Ainda sim, existem casos extremos em que todos os subcanais apresentam um
qualidade muito baixa, de modo que a melhor maneira possível para se dividir a
potência disponível, é não dividindo-a , e sim alocando todo o recurso em uma só
antena , a com melhor SNR. Neste caso, a capacidade de multiplexação do sistema será
perdida, já que apenas uma antena será a transmissora, logo, como vemos abaixo, o
número de antenas não terá qualquer influência na capacidade do sistema, em sistemas
com características iguais, a quantidade de antenas será uma informação desprezível
para o cálculo da capacidade do sistema:
Figura 24- Capacidade x N° de antenas no MIMO em um ambiente com baixo SNR
Sendo assim, verificamos novamente a fórmula que foi aproximada na sessão
3.6.3.5 – Exemplo numérico do algoritmo de Waterfilling, onde é provado que para
sistemas que estão enfrentando uma alta potência de ruído, teremos que o rank 𝑟𝐻 da
matriz 𝐻(𝑘) não influenciará a capacidade de transmissão do sistema.
𝐶𝑀𝐼𝑀𝑂𝑇𝐼 ≈ 𝑙𝑜𝑔2(
𝑃′
𝜎𝑛2
𝜆²𝑚𝑎𝑥 )
A capacidade dependerá apenas da qualidade do melhor subcanal. O uso do
algoritmo de Waterfilling nestes casos faz-se necessário novamente, para podermos
entender em quais canais, ou em qual canal, deve ser alocada a potência para que não
haja uma redução na eficiência do sistema.
- 56 -
Capítulo 5
Conclusão
5.1 – Conclusões sobre o algoritmo. O objetivo deste trabalho era de modelar e avaliar o algoritmo de Waterfilling
em sistemas MIMO e também, olhando para o futuro das comunicações sem fio, avaliar
seu comportamento em sistema MIMO com uma quantidade massiva de antenas (UM
MIMO), que é uma das tecnologias chaves para o desenvolvimento das próximas
gerações de sistemas de comunicação. Vimos como a alocação de potência correta pode,
além de garantir uma eficiência energética melhor, aumentar a capacidade de
transmissão de alguns sistemas.
Os resultados das simulações, apresentados no último capítulo, dão ao leitor boa
informação sobre o desempenho do algoritmo e ilustram como ele funciona em cenários
diversos, desde sistemas que estejam enfrentando uma baixa potência de ruído (High
SNR) e até em casos extremos onde a capacidade de multiplexação de dados do sistema
é perdida devido a uma alta distorção causada pelo ruído no canal. Ambos os cenários
foram testados exaustivamente com pequenos e grandes números de antenas
transmissoras e receptoras.
No primeiro momento, entendemos como o algoritmo deveria ser utilizado e seu
comportamento em ambientes distintos. Ficou claro, desde o início, que em
transmissões em que o sinal apresenta uma potência muito maior que o ruído no canal, o
uso deste algoritmo não impacta tanto na eficiência de transmissão, em casos como este,
é nítido como a técnica de criar o máximo número de caminhos para a informação ser
transmitida, diversidade espacial, deve ser totalmente explorada, ou seja, a potência
deve ser dividida de modo que o máximo número de antenas seja utilizada. Porém, em
casos que a transmissão encontra alguma dificuldade perante o ruído apresentado, é
quando se torna mais necessário a utilização deste algoritmo, realocando a potência nos
lugares corretos, conseguiu melhorar a capacidade de transmissão em mais de 300% em
alguns casos.
Na segunda parte dos testes realizados, vimos como o algoritmo continuava
beneficiando sistemas com grande quantidade de antenas, onde a capacidade de
transmissão basicamente escalava com a quantidade de antenas presentes e que eram
utilizadas. Novamente em ambientes sem ruído, não se fazia necessário o uso do
algoritmo; a potência poderia apenas ser dividida igualmente entre as antenas e o
resultado encontrado seria muito similar. Mais uma vez, em ambientes de transmissão
extrema, com uma péssima qualidade do canal, o código criado conseguiu melhorar a
eficiência dos conjuntos, entendendo quando era necessário abdicar da capacidade de
multiplexação e tratar o sistema MIMO como se houvesse apenas uma antena, de forma
que toda a potência era alocada no melhor subcanal.
Ressaltamos também como a capacidade de transmissão era influenciada, ou não
pela quantidade de antenas, dependendo da qualidade do canal. Testamos o algoritmo
- 57 -
em sistemas que tinham desde 5x5 antenas até 12000x12000, validando novamente o
que foi ressaltado no parágrafo anterior.
Concluindo, cada resultado gerado por este projeto foi essencial para entender o
quão importante o algoritmo Waterfilling pode ser para os sistemas de comunicação
sem fio e é definitivamente uma ótima técnica na alocação de recursos e altamente
recomendável para sistemas MIMO invariante no tempo. Mostrando-se não tão
relevantes em ambientes com uma alta relação sinal ruídos, mas extremamente
eficientes em cenários enfrentam condições adversas em relação ao ruído presente.
5.2 –Trabalhos futuros
Este projeto foi desenvolvido para satisfazer as necessidades dos problemas de
alocação de recursos em um sistema LTE MIMO invariante no tempo. Por outro lado,
devemos notar que este estudo de alocação de potência deve ser expandido para
sistemas variantes de tempo que apresentem características como fast fading e slow
fading. Outro ponto que deve ser ressaltado é que para este algoritmo funciona para
canais onde as informações do canal são conhecidas pelo transmissor, e pelo receptor.
Para que este algoritmo seja utilizado, estudos sobre métodos de estimativa das
informações do estado do Canal devem continuar sendo conduzidos. Caso contrário,
sem corretas informações sobre o canal e o ruído presente, este método estudado não
será possível de ser realizado. Para sistemas MU MIMO, outros tipos de esquemas de
alocação de recursos devem ser estudados, verificados e comparados, como o Adaptive
Pilot Power Allocation..
- 58 -
Bibliografia
[1] “3gpp,” [Online]. Disponível: http://www.3gpp.org/technologies/keywords-acronyms/98-lte.
[Acesso em 26 Setembro 2016].
[2] “Informit,” 19 Abril 2002. [Online]. Disponível:
http://www.informit.com/articles/article.aspx?p=26445&seqNum=6. [Acesso em 26
Setembro 2016].
[3] “Jisc,” [Online]. Disponível: https://community.jisc.ac.uk/library/advisory-services/mobile-
networking-1g-4g . [Acesso em 26 Setembro 2016].
[4] “Difference Between 3G and 4G,” [Online]. Disponível:
http://www.differencebetween.net/technology/difference-between-3g-and-4g/. [Acesso em
26 Setembro 2016].
[5] “LTE (Long Term Evolution),” [Online]. Disponível: http://tjh0806566.blogspot.co.uk/. [Acesso
em 03 Outubro 2016].
[6] M. Huggins, “LTE Investigation, System Modelling and Performance Evaluation,” London,
2012.
[7] 3rd Generation Partnership Project, “3GPP TS 36.211,” 2009.
[8] “LTE Network Architecture,” [Online]. Disponível:
http://www.tutorialspoint.com/lte/lte_network_architecture.htm. [Acesso em 15 Outubro
2016].
[9] Crati, “EUTRAN architecture as part of a LTE and SAE network,” [Online]. Disponível:
https://upload.wikimedia.org/wikipedia/commons/thumb/6/61/EUTRAN_arch.op.svg/512px-
EUTRAN_arch.op.svg.png. [Acesso em 15 Outubro 2016].
[10] H. Al-Raweshidy, Advanced Wireless Communications, Brunel University London: Wireless
Networks and Communications Centre ( WNCC ).
[11] E. De Carvalho, T. Brown e P. Kyritsi, Pratical guide to the MIMO Radio Channel with Matlab
Examples, West Sussex: A. John Wiley & Sons,Ltd.,Publication, 2012.
[12] P. Ian, “MIMO Formats - SISO, SIMO, MISO, MU-MIMO,” [Online]. Disponível: Fonte:
http://www.radio-electronics.com/info/antennas/mimo/formats-siso-simo-miso-mimo.php.
[Acesso em 21 10 2016].
[13] “Massive (Very Large) MIMO Systems,” [Online]. Disponível: https://massivemimo.eu/.
[Acesso em 29 Outubro 2016].
- 59 -
[14] E. L. e. T. M. E. Björnson, “Massive MIMO: Ten Myths and One Critical Question,” 2015.
[15] H. Ramezani, “OFDM water filling algorithm,” 20 Outubro 2006. [Online]. Disponível:
http://www.mathworks.com/matlabcentral/fileexchange/12733-ofdm-water-filling-
algorithm. [Acesso em 20 Dezembro 2016].
[16] H. Ramezani, “OFDM water filling algorithm,” 20 October 2006. [Online]. Disponível:
http://www.mathworks.com/matlabcentral/fileexchange/12733-ofdm-water-filling-
algorithm/content/ofdmwaterfilling.zip. [Acesso em 20 Dezembro de 2016].
[17] R. Reis, “OFDMA x SCFDMA,” 2014. [Online]. Disponível:
http://www.gta.ufrj.br/ensino/eel879/trabalhos_vf_2014_2/rafaelreis/ofdma_scfdma.
[Acesso em 29 Setembro de 2016].
[18] “LTE Encyclopedia,” [Online]. Disponível: http://sites.google.com/site/lteencyclopedia/.
[Acesso em 29 Setembro 2016].
[19] Y. Lu e W. Zhang, “Water-filling Capacity Analysis in Large MIMO,” The University of New
South Wales, Sydney,Australia.
[20] O. Edfors, E. Larsson, F. Edfors e T. Marzetta, “Massive MIMO for next Generation Wireless
System,” 23 Janeiro 2014.
[21] L. Frenzel, “Introduction LTE advanced real 4g,” Electronic Design, 8 Janeiro 2013. [Online].
Disponível: http://electronicdesign.com/4g/introduction-lte-advanced-real-4g. [Acesso em 30
Setembro 2016].
[22] B. Klug, “Verizon 4G LTE two datacards wifi hotspot massively reviewed,” Anandtech, 27 Abril
2011. [Online]. Disponível: http://www.anandtech.com/show/4289/verizon-4g-lte-two-
datacards-wifi-hotspot-massively-reviewed/2. [Acesso em 15 Outubro 2016].
- 60 -
Apêndice
Código
I. WaterfillingUFRJ
function [capacity , allocatedPower,eigenmodes] = waterfillingUFRJ
(... type,totalPower,matrix,BW,No)
% Developed by Daniel B. Ribeiro - Sept, 2016
error=0; if strcmp(type,'channelmatrix') H=matrix; [nR,nT] = size(H); nSubChannel = min(nR,nT);
% eigenmodes of the channel channelNoise = No*BW; [~,V,~] = svd(H); eigenmodes = diag(V)'; if nSubChannel == 1 error=1; disp('Error:Channel Matrix of a SIMO or MISO'); disp(' Enter a MIMO Channel Matrix'); disp(' ( number of Receiver and Transmiter antenna > 1
)'); else CNR = eigenmodes.^2/channelNoise; partialAllocatedPower = (totalPower + sum(1./CNR))/nSubChannel -
1./CNR; end; elseif strcmp(type,'eigenmodes') eigenmodes=sort(matrix,'descend');
[nColumn,nRow] = size(eigenmodes); if min(nColumn,nRow) == 1 nSubChannel=nRow; channelNoise = No*BW; CNR = eigenmodes.^2/channelNoise; partialAllocatedPower = (totalPower + sum(1./CNR))/nSubChannel
- 1./CNR; else error=1; disp('Error:Eigenmondes Matrix its not Row'); disp(' Enter Row Vextor containing the Eigenmodes '); end; else disp('Error:Wrong type of Matrix.'); disp(' There are only two options:'); disp(' "eigenmodes"'); disp(' "channelmatrix"'); error=1; end if error==0 while(length( find(partialAllocatedPower < 0 )) > 0 )
- 61 -
negIndex = find(partialAllocatedPower <= 0); posIndex = find(partialAllocatedPower > 0); tempNSubchannel = length(posIndex); partialAllocatedPower(negIndex) = 0; tempCNR = CNR(posIndex); powerAllocTemp = (totalPower + sum(1./tempCNR))... /tempNSubchannel - 1./tempCNR; partialAllocatedPower(posIndex) = powerAllocTemp; end
% amount of power allocated to each subchannel allocatedPower = partialAllocatedPower;
% total capacity of a channel based on shanon theory (bits/s) capacity = sum(log2(1 + allocatedPower.*CNR)); equalCapacity = sum(log2(1 + (totalPower/nSubChannel).*CNR));
% One Chart f2 = figure(2); clf; set(f2,'Color',[1 1 1]); bar((allocatedPower + 1./CNR),1,'r'); hold on; bar(1./CNR,1); xlabel('Subchannel indices'); title('Waterfilling algorithm') legend('Amount of power allocated to each subchannel',... 'Noise to Carrier Ratio')
% Splitted charts f1 = figure(1); clf; set(f1,'Color',[1 1 1]); subplot(2,1,2); bar((allocatedPower),1,'r'); xlabel('Subchannel indices'); title('Waterfilling algorithm'); legend('Amount of power allocated to each subchannel'); subplot(2,1,1); bar(1./CNR,1); xlabel('Subchannel indices'); title('Waterfilling algorithm'); legend('Noise to Carrier Ratio');
else capacity='Function error.'; allocatedPower = 'Function error.'; end
- 62 -
II. nMIMOxCapacity
clear all;
% Number of Interactions nInteractions = 100;
index=1; for mimo=2:12000 average = zeros(mimo,mimo); for i=1:nInteractions H = random('rayleigh',1,mimo,mimo); [~,V,~] = svd(H); average=average+V; end average=average./nInteractions; eigenmodes = diag(V)'; % disp(eigenmodes); % LOW SNR [result(index),~]=waterfillingUFRJ('eigenmodes',1e-
3,eigenmodes,1e6,1e-6); % HIGH SNR % [result(index),~]=waterfillingUFRJ('eigenmodes',1e-
4,eigenmodes,1e6,1e-9); index=index+1; end disp(result); mimo = 2:12000;
f1 = figure(1); clf; % Poliynomial curve fitting of degree 2 to find the best plot % aprroximation. p = polyfit(mimo,result,2) x1=linspace(2,14); y1=polyval(p,x1);
plot(mimo,result,'o','color',[1,0,0],'MarkerSize',10,'LineWidth',4); hold on; plot(x1,y1); xlabel('Subchannel indices'); ylabel('Capacity (bits/s)');