Como adiciono AWGN a uma representação I e Q de um sinal?


16

Eu tenho um sistema de comunicação sem fio que estou simulando no Matlab. Estou realizando algumas marcas d'água, ajustando levemente a fase do sinal transmitido. Minha simulação pega os valores originais I (em fase) e Q (quadratura) e adiciona a marca d'água. Eu tenho que simular a taxa de erro de bit resultante depois de ser transmitida. Por enquanto, só preciso adicionar quantidades variáveis ​​de ruído térmico ao sinal.

Como eu tenho o sinal representado como seu canal I e ​​Q, seria mais fácil adicionar AWGN (ruído branco gaussiano aditivo) aos I e Q diretamente. Um pensamento era adicionar ruído aos dois canais independentemente, mas minha intuição me diz que isso não é o mesmo que adicioná-lo ao sinal como um todo.

Então, como posso adicionar ruído a ele quando está neste formulário?


talvez seja mais útil se você puder fornecer alguns detalhes do sistema de comunicação que está simulando.
Rajesh Dachiraju

1
Eu diria que você apenas gera ruído para I e Q e depois os adiciona. Não vejo por que o ruído estaria correlacionado entre os dois.
Endolith

1
@ endolith, A diferença de ruído só apareceria no mixer, além de que eles deveriam compartilhar seus sinais de ruído.
precisa saber é o seguinte

Você está dizendo que o adicionaria ao sinal multiplexado em quadratura?
Phonon

@phonon, o que você quer dizer com multiplexado?
Kortuk

Respostas:


14

Sim, você pode adicionar AWGN de ​​variação separadamente para cada um dos dois termos, porque a soma de dois gaussianos também é gaussiana e suas variações se somam . Isso terá o mesmo efeito que adicionar um AWGN de ​​variação 2 σ 2 ao sinal original. Aqui estão mais algumas explicações, se você estiver interessado.σ22σ2

Um sinal analítico pode ser escrito em seus componentes em fase e em quadratura comox(t)=a(t)sin(2πft+φ(t))

x(t)=I(t)sin(2πft)+Q(t)cos(2πft)

onde e Q ( t ) = a ( t ) sin ( φ ( t ) ) . Se você deseja adicionar AWGN ao seu sinal original como x ( t ) + u ( t ) , onde u ( t ) N ( μ , σ 2I(t)=a(t)cos(φ(t))Q(t)=a(t)sin(φ(t))x(t)+u(t) , você pode adicionar AWGN a cada um dos termos comou(t)N(μ,σ2)

y1(t)=[I(t)sin(2πft)+v(t)]+[Q(t)cos(2πft)+w(t)]

onde v(t),w(t)N(μ/2,σ2/2)

Observe também que, como os termos em fase e em quadratura são aditivos, o AWGN também pode ser simplesmente adicionado a qualquer um dos dois termos na representação de x ( t ) acima. Em outras palavras,IQx(t)

y 3 = [ I ( t ) sin ( 2 π f t ) + u ( t ) ] + Q ( t ) cos

y2=I(t)sin(2πft)+[Q(t)cos(2πft)+u(t)]
y3=[I(t)sin(2πft)+u(t)]+Q(t)cos(2πft)

são estatisticamente equivalentes a , embora eu prefira usar y 1 porque não preciso acompanhar qual componente possui ruído adicionado a ele.y1y1


Como o sinal tem ruído, parece que o ruído apareceria nos dois canais com a magnitude original, mas afetado pelo processo de mixagem. Eu pensaria que o processo de mixagem afetaria o ruído muito mais do que a adição de subtração, dividindo o sinal.
Kortuk

1
Obviamente, se você teve um ruído no sinal e depois o dividiu em seus componentes de QI, cada um terá um ruído associado a ele. No entanto, o OP está falando sobre simulá-lo no MATLAB e ele possui as partes I e Q separadamente e deseja saber como adicionar ruído a elas para simular a adição de ruído ao sinal original.
Lorem Ipsum

boa resposta com muitos detalhes, mas falha em responder concisa à pergunta básica - OP: ignore sua intuição; adicionar WGN no eixo real com WGN no eixo imaginário resulta em WGN complexo. Lembre-se de escala em 3dB desde variância da soma é o dobro de peças (stdv2 = 1.413 stdv1)
Mark Borgerding

2
@ Yoda, você tem todos os dados, mas faz o leitor ler muitas equações antes de chegar à resposta. Apenas sugiro que você coloque sua peça em negrito em primeiro lugar e forneça os detalhes de suporte.
Mark Borgerding

1
@ yoda, eu estava cansado quando li isso. Sua resposta é muito astuta. Obrigado por tomar o tempo!
Kortuk

5

Kellenjb não respondeu às perguntas de Rajesh D e endólito, e não é fácil descobrir exatamente o que ele precisa. Mas como eu discordo de alguns detalhes das Respostas dadas por yoda e Mohammad, estou postando uma resposta separada, onde, com as devidas desculpas a Mark Borgerding, todas as coisas úteis aparecem no final, depois de todas as equações chatas.

Em um sistema de comunicação típico, o sinal de entrada é um sinal de passagem de banda de largura de banda na frequência central f cB Hz e pode ser expresso como r ( t ) = I ( t ) cos ( 22BfcB onde I ( t ) e Q ( t ) são

r(t)=I(t)cos(2πfct)Q(t)sin(2πfct)
I(t)Q(t)sinais passa-baixo da largura de banda Hz e são referidos como componentes em fase e em quadratura. Observe a diferença de signos e terminologia da escrita yoda'a: dessa forma, podemos escrever r ( t ) = Re { [ I ( t ) + j Q ( t ) ] e j 2 π f c t } onde I ( t ) + j Q ( t ) é o sinal complexo da banda base .B
r(t)={[Eu(t)+jQ(t)]ej2πfct}
Eu(t)+jQ(t)

2porque(2πfct+θ)-2pecado(2πfct+θ)θ=0 0Eu(t)Q(t)

r(t)[2cos(2πfct)]=I(t)[2cos2(2πfct)]Q(t)[2sin(2πfct)cos(2πfct)]=I(t)+[I(t)cos(2π(2fc)t)Q(t)sin(2π(2fc)t)]r(t)[2sin(2πfct)]=I(t)[2sin(2πfct)cos(2πfct)]+Q(t)[2sin2(2πfct)]=Q(t)+[I(t)sin(2π(2fc)t)Q(t)cos(2π(2fc)t)]
I(t)Q(t) sem distorção.

O ruído de banda larga está presente no front end do receptor e as principais perguntas que precisam ser respondidas são o que acontece em um receptor real e o que deve ser feito para simular a realidade.

  • x(t)=I(t)+NI(t)y(t)=Q(t)+NQ(t)
    NI(t)NQ(t)
    σ2=N02|H(f)|2df
    H(f)t0NI(t0)NQ(t0)σ2NI(t0)NI(t1) I(t)Q(t)
  • r(t)+ Mfcm
    r[m]=r(m/Mfc)+N[m]=I(m/Mfc)cos(2π(m/M))Q(m/Mfc)sin(2π(m/M))+N[m]
    N[m]variáveis ​​aleatórias gaussianas de média zero com variância comum, cujo valor depende do SNR. Eles podem ser rastreados através dos misturadores e dos filtros passa-baixas durante a simulação detalhada.
  • Não recomendo adicionar ruído entre as saídas do mixer e as unidades de filtro passa-baixo. Enquanto não é ruído introduzido nessa fase, este é normalmente dominado pelo ruído do front-end que está vindo através dos misturadores.
  • B1mNI[m]NQ[m]NI[m]NI[m+i] Independentes ou não, requer muito pensamento e análise, além de detalhes conhecidos por Kellenjb, mas não por nós.

Obrigado, Dilip. Boa resposta detalhada, praticamente focada.
Jason R

-2

Kellenjb,

O ruído tanto no I quanto no Q não será de fato gaussiano. De fato, eles vão se originar do mesmo vetor de ruído original. Isso ocorre porque havia apenas um vetor de ruído no receptor. Então, o que está acontecendo é que o seu sinal entra no receptor, onde o AWGN é adicionado, é claro. Logo depois, porém, o receptor projetará isso (sinal + ruído) em uma base de pecado e em uma base de cosseno, fornecendo assim seus componentes de I e Q.

Portanto, agora o ruído em qualquer ramo não é mais gaussiano, mas na verdade é o produto de uma base de pecado vezes o vetor de ruído original e o produto da base de cosseno multiplicado pelo vetor de ruído original.

A maneira que eu recomendaria simular isso (você está fazendo tudo isso na banda base?) É simplesmente construir uma base de pecado e cosseno, e simplesmente multiplicar contra (sinal + ruído), onde 'sinal' é o seu sinal original de claro, e depois, claro, leve-o para a banda base depois disso. De fato, uma vez que você filtra para levá-lo à banda base, seus vetores de ruído serão não brancos e não gaussianos.

Espero que isto ajude! :)

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.