Sei sulla pagina 1di 6

Classicacao de Modulacao em R dio Cognitivo: a Uma Implementacao em FPGA

Adalbery R. Castro, Lilian C. Freitas, Claudomir Cardoso and Aldebaro Klautau Sensors and Embedded Systems Laboratory (LASSE) - Federal University of Par (UFPA) a CP 8619 - Rua Augusto Correa 01 - CEP 66075-110 - B lem - Par - Brazil. e a Web: www.lasse.ufpa.br. E-mails: {adalbery, liliancf, claudomir, aldebaro}@ufpa.br
Abstract This paper presents the development of an IP (Intelectual Property) core for modulation classication in cognitive radio consisting of an SVM (support vector machine), which can be easily programmed and optimized based on an feature extractor. The SVM IP core supports multiple classes and can be used in any pattern recognition application. This paper also evaluates the performance of SVM considering the feature extractor CSS (concatenated sorted symbols). The CSS-SVM classicator have been implemented in VHDL. The results show the feasibility of the classication system developed, which can be used not only in cognitive radio but also in military applications. Resumo Este artigo apresenta o desenvolvimento de um nucleo IP (Intelectual Property) para classicacao de modulacao em r dio cognitivo. Este nucleo IP e composto por um a classicador SVM (M quina de Vetores de Suporte), o qual pode a ser facilmente programado e otimizado com base no extrator de caractersticas. O classicador SVM suporta multiplas classes e pode ser usado em qualquer aplicacao de reconhecimento de padr es. Este artigo tamb m avalia o desempenho do classicador o e SVM, considerando a t cnica de extracao de caractersticas e chamada de CSS (Smbolos Ordenados e Concatenados). O CSS usa os smbolos ordenados de uma modulacao digital linear para representar a modulacao. O classicador CSS-SVM foram implementados em VHDL. Os resultados mostram a viabilidade do sistema de classicacao desenvolvido, o qual pode ser usado n o apenas em r dio cognitivo, mas tamb m em aplicacoes a a e militares. Keywords Cognitive radio, modulation classication, support vector machine, FPGA.

I. I NTRODUC AO As t cnicas de r dio cognitivo (RC) v m sendo bastante e a e pesquisadas devido sua capacidade de aumentar a ec cia dos a sistemas de comunicacao. A classicacao de modulacao [1] e um dos m dulos da etapa de sensoriamento espectral em RC o que mais demanda esforco computacional. Na tarefa de classicacao de modulacao, o objetivo e determinar que tipos de sinais est o ocupando o espectro. a Para isso, em etapa pr via, denem-se as N classes e o e classicador convencional ir sempre decidir por uma dentre a as N classes. A denicao das classes pode levar em conta o tipo de modulacao, forma de onda, largura de faixa, frequ ncia e da portadora, dentre outros aspectos [2]. O processo de classicacao de modulacao e constitudo por dois blocos: um bloco de extracao de par metros e um de a classicacao. O primeiro bloco extrai a informacao relevante para a decis o, transformando os sinais recebidos (ap s passar a o pelo canal) em um conjunto chamado de par metros ou a

caractersticas. Os par metros s o utilizados pelo classicador a a para escolher a classe que melhor descreve a modulacao do sinal. As publicacoes sobre classicacao autom tica de modulacao a (AMC, de automatic modulation classication) disponveis na literatura abordam diferentes t cnicas de extracao de e par metros e de classicacao, conforme e mostrado em [3]. a No entanto, n o h projetos de arquitetura para implementacao a a pr tica (em hardware) de AMC. Um motivo talvez seja a clara a conex o de AMC com sistemas militares e o nanciamento a ` de muitas pesquisas por instituicoes vinculadas a seguranca e intelig ncia. e Em sua grande maioria, os algoritmos publicados s o a desenvolvidos e avaliados em ambientes de simulacao, abstraindo-se restricoes impeditivas para implementacao em tempo real, como o custo computacional. Dado que detectar e classicar sinais em tempo real ou com uma duracao de tempo curta e uma tarefa primordial para operacao de sistemas de RC e diversas t cnicas tem sido estudadas, tais como e t cnicas que utilizam cicloestacionariedade [4], cumulantes e cclicos [5], espectrograma tempo-frequ ncia [6], transformada e wavelet [7], o que se observa e que a maioria dos algoritmos propostos na literatura apresenta um custo relativamente alto. Dessa forma, torna-se de grande interesse a implementacao e testes de algoritmos que sejam factveis de serem embarcados em dispositivos como as placas USRP [8] e m dulos de FPGA, capazes de em tempo real analisar o determinadas faixas de frequ ncias, detectando espectros e disponveis para uso, bem como classicando modulacoes de sinais de usu rios. a Nesse contexto, este trabalho tem como objetivo o desenvolvimento de uma arquitetura eciente para classicacao de modulacao em RC, com enfase especial na implementacao em hardware e operacao em tempo real. Para isso foi desenvolvido um IP (Intelectual Property) core baseado em um classicador SVM (suport vector machine), com suporte a m ltiplas classes, em conjunto com o extrator u de par metros CSS (concatenated sorted symbols), o qual usa a os smbolos ordenados de uma modulacao digital linear para representar a modulacao. O restante deste trabalho est organizado da seguinte a maneira: a Secao II apresenta o extrator de par metros a CSS, bem como o processamento de sinais que precede a sua utilizacao. A Secao III destina-se a apresentar o

Magnitude / Fase (rad)

classicador SVM. A Secao IV apresenta a arquitetura do IP core CSS-SVM para classicacao de modulacao em RC. A Secao V apresenta e discute os resultados de simulacao e sntese em FPGA do IP Core CSS-SVM. A SecaoVI apresenta as consideracoes nais do trabalho. II. E XTRATOR DE PAR AMETROS CSS O CSS (concatenated sorted symbols ou smbolos ordenados e concatenados) e um extrator de par metros para a classicacao de modulacao, proposto recentemente [9], o qual usa os smbolos da modulacao digital como par metros de a entrada do classicador. O extrator de par metros CSS armazena a magnitude e a a fase dos smbolos recebidos em s (ap s a normalizacao) o e ordena-os separadamente. Os dois vetores ordenados (magnitude e fase) s o ent o concatenados, gerando um novo a a vetor x com a dimens o D igual a duas vezes o n mero N a u de smbolos (D = 2N ), que busca reetir uma assinatura individual da modulacao correspondente. A Fig. 1 ilustra um exemplo de dois possveis vetores x com amostras de smbolos recebidos (m dulo e fase) das o modulacoes 16-QAM e 8-PSK ap s serem ordenados. Cada o vetor corresponde a N = 250 smbolos, produzindo um comprimento total de D = 2N = 500 elementos em x correspondentes a 250 magnitudes e 250 fases, nesta ordem. Nota-se que existe apenas um valor de m dulo e oito de fases o para a modulacao 8-PSK. E possvel distinguir de forma clara as diferentes assinaturas fornecidas pelo extrator CSS para as duas modulacoes.
4

4 3 2 1 0 1 2 3 4

16QAM, SNR = 15 dB 8PSK, SNR = 15 dB 0 100 200 300 Indice das amostras 400 500

Fig. 2. Comparacao entre 16-QAM e 8-PSK, com D = 2N = 500 amostras (250 magnitudes e 250 fases), SN R = 15dB.

Magnitude / Fase (rad)

16QAM, SNR = dB 8PSK, SNR = dB 0 100 200 300 Indice das amostras 400 500

estatstico, a qual foi desenvolvida por Vapnik [10] com o objetivo de solucionar problemas de classicacao de padr es. o Foi desenvolvida para resolver problemas de classicacao bin ria, ou seja, dado um conjunto de treino X com exemplos a de duas classes, uma SVM separa essas atrav s de um e hiperplano, o qual e determinado por alguns exemplos das classes pertencentes ao conjunto X que s o denominados a de vetores de suporte. Considerando padr es linearmente o separ veis, o hiperplano e uma superfcie de decis o que a a separa os exemplos das classes usando m xima margem de a separacao entre elas. Entretanto, para padr es n o-linearmente o a separ veis, tanto o hiperplano quanto os vetores de suporte a s o obtidos atrav s de um resultado de uma funcao de a e mapeamento apropriada sobre os dados do conjunto que os torna separ veis [11]. a Os fundamentos de uma SVM s o constitudos pela Teoria a de Aprendizado Estatstico (TAE). De acordo com [12], a TAE estabelece as ferramentas matem ticas que permitem encontrar a um bom classicador a partir do conjunto de dados de treino. Descreve-se o desempenho desejado de um classicador f como sendo uma taxa que indica o menor erro durante a etapa de treinamento, cujo erro e mensurado pelo n mero de u predicoes incorretas de f , a qual e denida de risco emprico Remp (f ) [13], fornecido pela Equacao 1: Remp (f ) = 1 n
n

c(f (xi ), yi )
i=1

(1)

Fig. 1. Comparacao entre 16-QAM e 8-PSK com D = 2N = 500 amostras (250 magnitudes e 250 fases) , sem rudo.

Na Fig. 2, um rudo branco gaussiano com SN R = 15 dB foi adicionado aos dois tipos de modulacao anteriormente ilustradas. Neste caso, percebe-se que a distincao entre os dois tipos de modulacao n o e mais t o obvia quanto no caso a a ideal, sem rudo. No entanto, em [9] e mostrado que ainda e possvel distinguir as modulacoes mesmo com adicao de rudo utilizando-se, por exemplo, o classicador SVM. III. C LASSIFICADOR SVM M quina de Vetores de Suporte (SVM) e um t cnica de a e reconhecimento de padr o baseada na teoria do aprendizado a

Na Equacao 1, n representa o n mero de exemplos contidos no u conjunto de entrada X e c(f (xi ), yi ) representa uma funcao custo, relacionando a previs o de f quando a sada desejada e a y. Um tipo de funcao frequentemente utilizada em problemas de classicacao e a 0/1 denida por c(f (xi ), yi ) = 1 |y 2 f (x)|, a qual retorna o valor 0 se x e classicado corretamente e o valor 1, caso contr rio. a IV. A RQUITETURA P ROPOSTA : IP CORE DE UMA SVM PROGRAM AVEL Esta secao apresenta o desenvolvimento de um IP core consistindo de uma SVM para funcionar como um

classicador universal que realize a tarefa de classicacao dentro de um perodo de tempo denido (tempo real) e que possa ser facilmente programado e otimizado com base no extrator de par metros CSS. Para simulacao e implementacao a em FPGA, foi utilizada a linguagem VHDL em conjunto com os programas ModelSim e Altera Quartus II [14]. Primeiramente foi idealizada a arquitetura apenas do classicador SVM, sem o extrator de par metros CSS. a Para que o classicador SVM realizasse o processamento computacional necess rio para classicacao de forma r pida a a e em tempo real, foi idealizada uma arquitetura onde os conjuntos de testes pudessem ser continuamente fornecidos e os coecientes do classicador pudessem ser alterados a qualquer momento. Esta e uma arquitetura program vel, a proposta para classicacao multiclasses, utilizando-se classicadores bin rios. O treinamento dos classicadores a deve ocorrer fora desta arquitetura. A Equacao 2 representa a funcao do problema de decis o entre duas classes utilizando a classicador bin rio SVM, onde w and b representam os a coecientes do classicador e x representa o vetor de teste. O sinal de f (x) indica o resultado do classicador, com f (x) = 0 sendo o limiar de decis o entre as duas classes para a o qual o classicador foi treinado.
D

b b

B msb B-1 msb

b b

B lsb B-1 lsb

B D

B D-1

B 4

B 3

w w

B 2 B-1 2

w w

B 1 B-1 1

B-1 w D

B-1 w D-1

B-1 w 4

B-1 w 3

i
b b

2 msb 1 msb

b b

2 lsb 1 lsb

2 D

2 D-1

2 4

2 3

w w x

2 2 1 2

w w x

2 1 1 1

1 w D

1 w D-1

1 w 4

1 w 3

D-1

ctrl

Fig. 3.

Entrada dos coecientes e dados de testes para classicacao.

f (x) =
i=1

wi xi + b.

(2)

A Fig. 3 mostra como ocorre a entrada dos coecientes dos classicadores e a entrada dos dados de teste. Os sinais provenientes da entrada i s o armazenados em a registradores de deslocamento, onde diversos registradores s o dispostos em arranjos sequenciais e as informacoes a s o deslocadas pelo circuito at que todos os registradores a e estejam preenchidos. D e o n mero de par metros ou u a features. Considerando y classes, B representa o n mero u de classicadores bin rios utilizados e e calculado atrav s a e da combinacao dois a dois de y classes. A Equacao 3 pode ser utilizada para calcular o n mero de classicadores u bin rios B necess rios para classicacao multiclasses com y a a classes. Os registradores w e b armazenam os coecientes dos classicadores e x armazena os dados para teste. Durante as simulacoes, o coeciente b apresentava ordem de grandeza superior aos demais coecientes, por isso ele ocupa duas posicoes de registradores, ou seja, o coeciente b utiliza o dobro de bits que os demais coecientes. y(y 1) (3) 2 Com o preenchimento dos registradores que armazenam os coecientes, somente os valores de testes precisam ser informados para incio de uma classicacao. Uma vez que os coecientes tenham sido informados, a classicacao poder a ocorrer continuamente a cada conjunto de teste inserido. Caso seja necess rio atualizar os coecientes dos a classicadores, a entrada i ser direcionada para o conjunto a B =

de registradores dos classicadores que se deseja atualizar. O tempo necess rio para a atualizacao dos coecientes dos a classicadores e o perodo do clock multiplicado pelo n mero u de registradores a serem preenchidos. Para implementacao de um classicador SVM em FPGA e proposta uma arquitetura em quatro passos bem denidos, conforme mostrado na Fig. 4, a qual foi implementada atrav s e de uma m quina de estados. a Passo 1: realiza a multiplicacao dos elementos dos vetores w e x da Equacao 2 e armazena os resultados em outros conjuntos com a mesma quantidade de registradores (para n o perder informacao e por se tratar de uma a multiplicacao, os registradores que recebem os resultados possuem o dobro da quantidade de bits dos registradores que armazenam os vetores w e x). Passo 2: realiza, para cada classicador, a soma de todos os valores provenientes do Passo 1, acrescido do coeciente b. Passo 3: verica o resultado de cada classicador. Sendo classicadores bin rios, o resultado de um classicador a corresponde a um voto dado para uma das classes para a qual foi treinado. Ao nal do Passo 3, tem-se a quantidade de votos totalizados para cada uma das classes. Passo 4: faz a confer ncia de qual foi a classe que recebeu e mais votos contabilizados no Passo 3. O resultado e a sada da classicacao. E importante perceber que esta arquitetura usurfrui das caractersticas de descricao de hardware em FPGA, ou seja, cada um dos passos descritos para se realizar o c lculo da a SVM ocorrer em um perodo do clock. No Passo 1, por a exemplo, em um unico ciclo do clock ocorrem todas as multiplicacoes necess rias para se calcular o produto interno a entre o vetor teste e os coecientes dos classicadores bin rios. a A. Implementacao do classicador de modulacao CSS-SVM 1) Bloco principal: A Fig. 5 representa a concepcao do bloco classicador, mostra quais s o os sinais necess rios na a a entrada e sada. O sinal clk representa o clock, que e a base de tempo do sistema. O sinal ckd e necess rio para indicar que existe a nas entradas i1 e i2 novas informacoes disponveis para o bloco. Estas informacoes podem ser coecientes para os classicadores ou smbolos para teste. A taxa de chegada dos

1 D

1 D-1

1 1

B-1 D

B-1 D-1

B-1 1

B D

B D-1

B 1

x
D

x
x
1

x
x
D

x
x
D-1

x
x
1

x
x
D

x
x
D-1

x
x
1

1
b
1

D-1

1 D

1 D-1

1 1

B-1

B-1 D

B-1 D-1

B-1 1

B D

B D-1

B 1

2 3 4

B-1

contagem
c1 c y-1 cy

max
classe

Fig. 4.

Representacao do bloco que realiza a classicacao.

Memria

wB

wB

D-1

wB D/2+1 w D/2+1 w2 D/2-1 w1 D/2+1 x2 D/2+1 x1 D/2+1


B-1

wB

D/2

w w

B 2 B-1 2

w w

B 1 B-1 1

wD w2

B-1

w D-1 w2 w1 x x

B-1

w D/2 w2 w1 x2

B-1

D-1

D/2

w w

2 2 1 2

w w

2 1 1 1

Fig. 5.

Sinais de entrada e sada do classicador.

w1

D-1 2 D-1 1 D-1

D/2

x2

smbolos deve ser diferente do clock. Os sinais i1 e i2 s o a as entradas do sinal. Para estes sinais utilizou-se a notacao complemento de dois, sendo 16 bits para magnitude e 16 bits para fase dos smbolos que ser o classicados. O sinal a dok indicar ao bloco que todo um conjunto de smbolos de a teste j foi informado e que uma nova classicacao poder a a dar incio. O sinal ctrl e de controle implementado para que a entrada i1 tamb m possa ser utilizada para fornecer ao bloco e os coecientes dos diversos classicadores. B. L gica de Acesso a Mem ria o o ` Foi criado um bloco de mem ria para cada classicador o bin rio SVM e outros blocos de mem ria para receber a o os conjuntos de testes. Para gerenciar todos os blocos de ` mem rias, foi necess rio criar uma l gica de acesso a o a o mem ria. A Fig. 6 ilustra os diversos blocos de mem ria o o necess rios para implementacao do classicador CSS-SVM. a Os blocos superiores mostrados na Fig. 6 e simbolizados por w foram criados para armazenar os coecientes dos classicadores bin rios SVM. Os blocos simbolizados por a x foram criados para armazenar os smbolos para teste. Observa-se que existem dois blocos de mem ria para os testes: o x1 e x2 . Os coecientes b da Equacao 2 necessitam do dobro de bits e s o armazenados em registradores e n o na mem ria a a o RAM. Isto foi uma decis o de projeto como forma de obter a melhor desempenho. Nos sinais de sada da Fig. 6 existe sempre informacao dos diversos blocos de mem ria, isto foi o necess rio para otimizacao da arquitetura proposta. a

D/2

x2
2

x2
1

1 D

x1 D/2

x1 2
wB wB

1 1

clk i1 i2 ctrl

Lgica de Acesso Memria

w1 w1 x2 x2 x1 x1

Fig. 6.

Representacao dos blocos de mem ria. o

C. Funcionamento Para compreender esta arquitetura, e necess rio lembrar que a para realizar a classicacao multiclasses, os coecientes dos B classicadores bin rios SVM deve ser inserido, bem como a um conjunto de teste, o qual precisa ser tratado antes de ser aplicado aos classicadores bin rios. Todas estas informacoes a chegam at o bloco principal, representado pela Fig. 5, atrav s e e dos sinais i1 e i2. Estes sinais chegam ao bloco de forma serial e a uma taxa denida por ckd. O sinal ctl e respons vel por informar qual o destino das a informacoes contidas em i1 e i2. Quando o valor de ctl e zero, indica ao bloco que as entradas i1 e i2 apresentam um novo smbolo de teste e que dever ser direcionado para um dos a

blocos de mem ria identicados como x1 ou x2 . A entrada i1 o e a fase e i2 e o m dulo. S pode ocorrer escrita de um valor o o em cada ciclo do clock por bloco de mem ria e, por isso, x1 o ou x2 s o segmentados em dois blocos (um para o m dulo e a o outro para a fase), permitindo que eles possam ser escritos em um unico ciclo do clock. Quando se deseja informar o valor de um coeciente, a entrada i1 deve conter este valor. O sinal ctl indica de qual classicador pertence o coeciente e, nalmente, a entrada i2 deve indicar para qual posicao dentro do bloco de mem ria o deve-se armazenar o valor de i1. Dessa forma, e possvel alterar o valor de apenas um coeciente. Isto reete em um menor tempo de atualizacao do conjunto de coecientes, caso seja necess rio atualizar apenas alguns dos valores. a Ap s o armazenamento dos coecientes dos classicadores o bin rios, e necess rio a entrada dos conjuntos de testes para a a classicacao. Para que n o ocorra a interrupcao do uxo de a smbolos para teste e que existe os dois blocos de mem ria o x1 ou x2 . O bloco x1 e primeiramente preenchido e o sinal dok deve indicar o incio do processo de classicacao. Neste momento, os novos smbolos que ser o utilizados para a a pr xima classicacao, ser o direcionados para x2 . Os valores o a armazenados em x1 s o processados para classicacao. a Considerando a necessidade de se armazenar N = 250 smbolos de teste e coecientes para B = 6 classicadores bin rios, sendo D = 2N = 500, ent o s o necess rios a a a a 5006+5002 = 4.000 posicoes de mem ria. Se cada posicao o necessitar de 16 bits, ent o 64.000 bits de mem ria RAM a o s o necess rios para esta implementacao. Antes de ocorrer a a a primeira classicacao, todos os coecientes w devem ser informados, assim como, pelo menos um conjunto de teste com N smbolos. Para o classicador CSS-SVM, a primeira etapa e a ordenacao dos m dulos e das fases atrav s de um algoritmo o e de ordenacao. O algoritmo empregado consiste em percorrer v rias vezes a todos os elementos da mem ria em busca do maior valor. o A busca ocorre da direita para a esquerda e os maiores valores s o armazenados na pr pria mem ria da direita para a a o o esquerda. Ocorrem v rias repeticoes de busca do maior valor. a O resultado da primeira busca e o maior valor armazenado na mem ria. O resultado da segunda busca ser o segundo maior o a valor armazenado na mem ria. Estas buscas ocorrem at que o e todos os n meros estejam ordenados. u E possvel deduzir o n mero de passos necess rio para u a efetuar toda a ordenacao. Os valores a serem ordenados devem estar nos blocos x1 ou x2 da mem ria. Estes blocos possuem o N = D/2 posicoes, como mostra a Fig. 6. Na primeira vez que o algoritmo buscar o maior valor, ele ir ler todas as a N posicoes de mem ria. Na segunda vez ele ir ler N 1 o a posicoes de mem ria, assim por diante at ler somente as duas o e primeiras posicoes. O n mero de escrita e igual ao n mero u u de leitura na mem ria durante a ordenacao e, na maioria das o vezes, ocorrem em um mesmo passo, exceto no incio e no m do algoritmo. O n mero total de passos necess rios para u a o algoritmo ordenar todos os valores e deduzido a partir da

soma dos termos de uma progress o aritm tica somados de a e mais uma constante que representa os passos de inicializacao e nalizacao do algoritmo. A Equacao 4 mostra como calcular o n mero total de u passos (np) necess rios para ordenar N posicoes de mem ria. a o A constante 7 foi obtida empiricamente e e resultado de alguns ciclos adicionais necess rios para inicializar e nalizar a o processo de leitura e escrita da mem ria no FPGA. o 2+N (N 1) + 7 (4) 2 Se N = 250, ent o e possvel calcular o n mero de passos a u total para ordenar 250 posicoes na mem ria. Neste caso, np = o 31.381 ciclos necess rios. Sendo cada ciclo realizado em um a perodo do clock (sinal clk) igual a 20 ns (f = 50 MHz), ent o e necess rio um tempo total de 627 s para realizar a a toda operacao de ordenacao dos m dulos e das fases. o Durante a ordenacao, quando o algoritmo faz a busca pelo maior valor, j neste momento ele realiza a multiplicacao a deste valor encontrado pelos coecientes dos classicadores bin rios, melhorando o desempenho da implementacao em a tempo de execucao e tamb m em uso de recursos do FPGA. e Os resultados parciais das multiplicacoes s o armazenados a em B registradores at a conclus o da ordenacao. Este e a registradores devem ser inicializados antes da ordenacao com os valores dos coecientes b de cada um dos classicadores bin rios. a Para o resultado nal do classicador CSS-SVM, s o a executados os Passos 3 e 4 da Fig. 4. E possvel estimar a relacao entre a taxa do clock e a taxa com que os smbolos chegam ao classicador. Basta dividir o n mero total de ciclos necess rios para uma classicacao pelo u a n mero de smbolos utilizado para teste. E desejado que ocorra u uma classicacao antes que um novo conjunto de smbolos de teste chegue completamente ao classicador, para isso, ` a frequencia do sinal clk deve ser superior a frequencia do sinal ckd. A taxa de smbolo deve ser contnua e e dada por ckd. O maior custo computacional para esta arquitetura e a ordenacao dos valores sob teste e as operacoes s o realizadas a na frequencia do sinal clk. Se o perodo do clock (clk) for igual a 20 s (f = 50 MHz), ent o o menor perodo de entrada de smbolo (sinal ckd) a dever ser aproximadamente 2.510 s. a np = V. R ESULTADOS A arquitetura proposta foi inicialmente implementada e testada no software Matlab e para auxiliar no desenvolvimento e treino do classicador foi utilizado o software de mineracao de dados WEKA (Waikato Environment for Knowledge Analysis) [15], o qual e uma ferramenta livre que re ne u uma s rie de classicadores e e bastante utilizada no meio e acad mico para comparacao de desempenho em problemas de e classicacao. As modulacoes utilizadas foram BPSK, 4-PAM, 16-QAM e 8-PSK. Considerando rudo AWGN (Additive White Gaussian Noise), de acordo com os trabalhos de classicacao de

modulacao disponveis em outras publicacoes como em [16] e [17]. Para os resultados mostrados a seguir, foram utilizados: 300 conjuntos de treino para cada modulacao. 50 conjuntos de teste para cada modulacao. N = D/2 = 250 smbolos para cada conjunto de treino. SN R = 2 dB usado no treino e no teste. B = 6 classicadores bin rios SVM. a fclk = 50 MHz para o sinal clk. Tclk = 20 s. Tckd = 2.600 s. A primeira vericacao dos resultados consistiu em comparar os resultados das classicacoes obtidas do programa Weka com os resultados da implementacao em FPGA. Notou-se que as duas implementacoes tiveram o mesmo percentual de acerto 176/200 = 0, 88 88%. Outro resultado relevante que pode ser auferido e o tempo necess rio para classicar 200 conjuntos de teste (50 exemplos a de cada modulacao). O classicador CSS-SVM necessita de aproximadamente 138 ms. Neste tempos tamb m est e a incluso o tempo necess rio para inserir os coecientes dos a classicadores. Para sntese, foi escolhido o FPGA EP2C20F484C, ` fabricado pela ALTERA e pertencente a famlia Cyclone II. Ap s compilacao no programa Altera Quartus II, foi possvel o obter um quantitativo dos recursos utilizado por um FPGA para implementacao do classicador CSS-SVM. A Tabela I mostra o resumo do desempenho classicador CSS-SVM.
TABELA I U TILIZAC AO DE RECURSO DO FPGA ALTERA EP2C20F484C AP OS SNTESE DO CLASSIFICADOR CSS-SVM UTILIZANDO Q UARTUS II. I Recurso Elementos Lgico (Total) o Funces Combinacionais o Registradores Lgicos Dedicados o Total Registradores Total de bits de memria o Multiplicadores Embarcados Tempo p/ 200 classificaces o Consumo 1.824 (10%) 1.586 ( 8%) 704 ( 4%) 704 64.000 (27%) 24 (46%) 138 ms

independente do extrator de par metros adotado e customiz -lo a a para a aplicacao em quest o. a Os resultados mostraram que e possvel realizar classicacao de modulacao em tempo real utilizando-se classicador SVM, para isso o mesmo foi implementado em conjunto com o extrator de par metros CSS. a Este trabalho demonstrou que e possvel implementar de forma eciente e em tempo real classicadores recorrentes nas publicacoes, mas que dicilmente apontam solucoes para sua implementacao de execucao em tempo real ou com um atraso relativamente curto. Como trabalhos futuros pretende-se expandir a arquitetura proposta, implementando outras t cnicas de extracao de e caractersticas, objetivando investigar novas formas de reduzir o uso dos recursos em FPGA, ou ainda diminuir o tempo necess rio para classicacao. a R EFER E NCIAS
[1] Simon Haykin, David Thomson, and Jeffrey Reed, Spectrum sensing for cognitive radio, Proceedings of the IEEE, vol. 97, pp. 849877, May 2009. [2] T. Yucek and H. Arslan, A survey of spectrum sensing algorithms for cognitive radio applications, Communications Surveys Tutorials, IEEE, vol. 11, no. 1, pp. 116 130, quarter 2009. [3] O.A. Dobre, A. Abdi, Y. Bar-Ness, and W. Su, Survey of automatic modulation classication techniques: classical approaches and new trends, Communications, IET, vol. 1, no. 2, pp. 137 156, April 2007. [4] Simon Haykin, Cognitive radio: Brain-empowered wireless communications, IEEE Journal on Selected Areas in Communications, vol. 23, n. 2, pp. 144150, Fev. 2005. [5] He Tao; Jing Xiaorong;, Modulation classication using arbf networks, 7th International Conference on Signal Processing, ICSP 04., vol. 03, pp. 1809 1812, Aug. 2004. [6] Tan Jo Lynn and A.Z. Shaamerr, Automatic analysis and classication of digital modulation signals using spectogram time frequency analysis, International Symposium on Communications and Information Technologies, 2007. ISCIT 07., pp. 916920, Oct. 2007. [7] Ling-Ling Meng; Xiu-Jie Si, An improved algorithm of modulation classication for digital communication signals based on wavelet transform, IEEE Transactions on Aerospace and Electronic Systems, vol. 03, pp. 12261231, Nov. 2007. [8] Ettus research llc, 2011, http://www.ettus.com/. [9] F.C.B.F. Muller, C. Cardoso, and A. Klautau, A front end for discriminative learning in automatic modulation classication, Communications Letters, IEEE, vol. 15, no. 4, pp. 443 445, april 2011. [10] V. Vapnik, The nature of statistical learning theory, Springer Verlag, 1995. [11] C. Nello and S. John, An introduction to support vector machines : and other kernel-based learning methods, Cambridge University Press, 1 edition, March 2000. [12] A.Lorena, Investigacao de estrat gias para a gerac o de maquinas e a de vetores de suporte multiclasses, Ph.D. thesis, Instituto de Ciencias Matem ticas e de Computac o - USP, 2006. a a [13] K.-R. Muller, S. Mika, G. Ratsch, K. Tsuda, and B. Scholkopf, An introduction to kernel-based learning algorithms, Neural Networks, IEEE Transactions on, vol. 12, no. 2, pp. 181 201, Mar. 2001. [14] Altera, Altera corporation., 2011, http://www.altera.com/. [15] http://www.cs.waikato.ac.nz/ml/weka, visited in 2011. [16] W. Su, J. L. Xu, and M. Zhou, Real-time modulation classication based on maximum likelihood, IEEE Commun. Lett., vol. 12, pp. 801803, Nov. 2008. [17] D. Shimbo; I. Oka; S. Ata;, An improved algorithm of modulation classication for digital communication signals based on wavelet transform, Radio and Wireless Symposium, 2007 IEEE, vol. 03, pp. 567570, Jan. 2007.

Observa-se que a arquitetura proposta e relativamente eciente no que diz respeito ao uso de recursos de FPGA, pois sua construcao prioriza o uso de mem ria e multiplicadores o disponveis no FPGA, dessa forma libera registradores e elementos l gicos para outras funcoes do RC, como o demodulacao e outras, al m da AMC. e VI. C ONCLUS OES Neste trabalho foi abordado o processo de classicacao de modulacao aplicada ao sensoriamento espectral de RC. Uma implementacao eciente de classicacao de modulacao foi apresentada, na qual se buscou minimizar o uso de recursos do FPGA, capacidade de processamento em tempo real e maximizar a probabilidade de acerto. Dessa forma, desenvolveu-se um IP core consistindo de uma SVM para funcionar como um classicador universal, isto e, que seja

Potrebbero piacerti anche