Académique Documents
Professionnel Documents
Culture Documents
1, MARCH 2004 1
faz uso dos processadores em ponto fixo, pois a prioridade a Instruction Word) [8] executam mltiplas instrues por ciclo.
minimizao dos custos e do consumo de energia. Para o Comparando-se o desempenho entre os processadores
alcance deste objetivo, necessrio determinar as faixas convencionais e os processadores com arquitetura VLIW,
dinmicas e a preciso adequada s aplicaes a serem obtem-se resultados irreais, j que estes possuem arquiteturas
desenvolvidas atravs de simulaes. J os processadores em completamente diferentes. At mesmo quando a comparao
ponto flutuante so recomendados para aplicaes DSP, entre processadores DSP convencionais, as taxas de MIPS
sensveis preciso, com uma maior demanda de faixa apresentam resultados que no refletem a realidade [9]-[10].
dinmica ou com foco na facilidade de desenvolvimento, em Alguns problemas encontrados para a avaliao destes
detrimento do custo. processadores a partir da medida MIPS so discutidos a
seguir.
B. Tamanho das palavras de dados
Alguns processadores DSP possibilitam o deslocamento de
Todos os processadores DSP em ponto flutuante usam vrios bits em uma nica instruo, enquanto que outros
palavras de dados com 32 bits. Como exemplo, pode-se processadores executam esta tarefa utilizando um ciclo de
destacar os processadores TMS320C67x da Texas Instruments instruo para cada deslocamento de bit. Alm disso, alguns
(TI). Para os processadores DSP em ponto fixo, o tamanho processadores DSP executam o deslocamento de dados em
mais comum de 16 bits, que o caso dos TMS320C62x e paralelo, ou seja, buscam os operandos e executam as
dos TMS320C64x, igualmente da TI. H tambm os instrues simultaneamente. Resta destacar que os
processadores DSP com 20 ou 24 bits, como os da famlia processadores DSP de ltima gerao possuem duas ou mais
ZR3800x da Zoran e da famlia DSP563xx da Motorola, MAC (Multiply Accumulate Unit) que executam operaes em
respectivamente. paralelo.
relevante ressaltar ainda que o tamanho das palavras De forma a tornar a anlise de desempenho uma tarefa com
usadas nos processadores DSP tem um impacto maior no seu resultados mais representativos utilizam-se benchmarks
custo, visto que este influencia diretamente as dimenses e o standard [9]. Os testes banchmarks fazem uso de diferentes
nmero de pinos necessrios no chip, bem como o tamanho conjuntos de algoritmos de processamento de sinais para
dos dispositivos de memria externa conectados aos avaliar a capacidade de processamento dos diferentes
processadores DSP. Com processadores DSP de ponto fixo de processadores DSP. Eles possibilitam ainda a anlise
16 bits possvel realizar operaes a 32 bits, a partir da comparativa confivel e representativa dos diversos
escolha criteriosa de algumas instrues, porm, com processadores DSP disponveis no mercado.
consumo maior de ciclos de relgio. Alm das informaes apresentadas e recomendadas,
Para as aplicaes DSP onde predominam operaes algumas questes merecem ainda ser consideradas. Deve-se
aritmticas de baixa preciso, o ideal escolher um atentar quanto ao uso dos termos milhes de operaes por
processador de 16 ou 20 bits. O uso de rotinas para realizar segundo (millions of operations per second MOPS) e
operaes em 32 bits poder ser considerado se alguma parte milhes de operaes em ponto flutuante por segundos
do programa necessitar de uma preciso maior. (millions of floating-point operations per second MFLOPS),
importante destacar, entretanto, que nem sempre os pois os fabricantes tm idias diferentes quanto definio do
tamanhos das palavras de dados e de instruo so iguais. Por termo operao. Por exemplo, alguns fabricantes afirmam
exemplo, os processadores DSP da famlia DSP ADSP-21xx, que seus processadores em ponto flutuante tem a taxa de
da Analog Devices usam tamanho de 16 bits para dados e 24 MFLOPS como sendo duas vezes a taxa de MIPS. A
bits para instrues. justificativa para esta afirmao que estes processadores so
C. Velocidade de processamento capazes de executar paralelamente as operaes de
Uma questo chave para a adequao de um processador multiplicao e de adio em ponto flutuante. Uma outra
DSP a uma aplicao particular a velocidade de execuo questo relevante refere-se taxa de execuo de instrues
das instrues. Desta forma, um parmetro fundamental para que pode ser igual ao clock de entrada do processador DSP ou
realizar esta anlise o tempo de ciclo de instruo do at um quarto de sua freqncia. Alm disso, muitos dos
processador definido como a quantidade de tempo necessria novos processadores DSP apresentam circuitos duplicadores
execuo das instrues rpidas. de clock ou PLL (phase-locked loops) que permitem o uso de
O recproco do tempo de ciclo de instruo dividido por clocks externos de baixa freqncia e gerao interna de altas
um milho e multiplicado pelo nmero de instrues freqncias.
executadas por ciclo chamado de processors peak D. Organizao da memria
instruction execution rate e dado em milhes de instrues A organizao do sistema de memria do processador tem
por segundo (million instructions per second - MIPS). No um grande impacto no seu desempenho. Por exemplo, as
entanto, um problema encontrado nesse parmetro de anlise MACs rpidas buscam uma palavra de instruo e duas
de desempenho o custo computacional na execuo de uma palavras de dados a cada ciclo de instruo. Para que tais
instruo rpida que pode variar enormemente para os vrios tarefas sejam realizadas, existem uma variedade de recursos
tipos de processadores disponveis. Por exemplo, os disponveis, a saber:
processadores DSP baseados na arquitetura VLIW (Very Long
RIBEIRO : PACKETS RECONSTRUCTION PROPOSALS APPLIED 3
[16]. Atravs desta interface serial possvel inserir x a elaborao de cdigos otimizados para a aplicao em
breakpoints, assim como observar e modificar o contedo dos questo.
registradores internos do processador. Alm disso, placas de Desta forma, a desconsiderao das caractersticas de
desenvolvimento so disponibilizadas, tais como as placas gerenciamento de energia torna difcil a obteno de uma
C6201 Evaluation Module (EVM) Bundle [17] e C6211 DSP figura de consumo do processador utilizado, j que o consumo
Starter Kit [18] da Texas Instruments, para a realizao de de energia pode variar de acordo com o tipo de instruo
simulaes em tempo real, antes que o hardware do projeto executada. A Texas Instruments, por exemplo, fornece
esteja implementado. Possibilita-se, assim, o aumento da informaes detalhadas sobre o consumo de energia associado
produtividade no desenvolvimento de novos projetos. aos tipos de instrues e configuraes de seus processadores
com o intuito de prover o engenheiro de projetos com
F. Multiprocessadores DSP
informaes necessrias elaborao de um prottipo de
Algumas aplicaes com o uso computacional intensivo, qualidade [20].
tais como as verificadas em aplicaes DSP em radar e sonar,
normalmente necessitam de mltiplos processadores. No H. Custo
entanto, sua utilizao no trivial e para o seu uso eficiente O preo dos processadores DSP o fator principal nos
deve-se considerar o seguinte: equipamentos com produo em larga escala, pois est
x a facilidade de interconexo em termos de projeto do diretamento relacionado ao custo final do produto.
circuito de comunicao entre os processadores DSP e o Normalmente, as empresas usam processadores DSP de baixo
custo de implementao da soluo; custo de forma a no ultrapassar os os custos previstos no
x a anlise do desempenho da interconexo a partir do projeto em questo, mesmo que tal deciso implique em pouca
overhead, latncia e throughput da comunicao entre os flexibilidade ou dificuldade de programao e de
processadores DSP. desenvolvimento. Entre as famlias disponveis, as de menor
Como exemplo de DSP voltados aplicaes com custo tende a ser formada de processadores com menor
mltiplos processadores, apresentam-se os processadores da memria interna e menor desempenho.
famlia ADSP-2106x, da Analog Devices, os quais contm Um fator importante no preo dos processadores DSP o
hardware de uso geral para sistemas com mltiplos custo do invlucro de empacotamento. Por exemplo, os
processadores. invlucros PQFP (Plastic Quad Flat Pack) e TQFP (Thin
Quad Flat Pack) podem ser muito mais baratos que um
G. Gerenciamento do consumo de energia
invlucro PGA (Pin Grid Array) [6].
Com o aumento explosivo do uso de processadores DSP importante destacar ainda que os preos dos
em equipamentos portteis, a utilizao de recursos que processadores DSP esto cada vez mais baixos e so
possibilitam o gerenciamento do consumo de energia e sua significativamente dependentes da quantidade a ser adquirida.
conseqente reduo por instruo executada tm influenciado
as principais implementaes DSP (telefones celulares, etc). III. CARACTERSTICAS DE VOIP
Para prover uma viso geral que possibilite um
A princpio, o termo Voz sobre IP pode ser definido como
entendimento dos principais recursos de gerenciamento de
a capacidade de realizao de chamadas telefnicas sobre uma
energia presentes em alguns processadores DSP, tais como os
rede de comutao de pacotes, sem garantia de qualidade de
da famlia TMS320C54x [19] e TMS320C55x [20],
servio e com capacidade de interoperabilidade com diferentes
necessrio o conhecimento das seguintes tcnicas de
tipos de redes. VoIP pode ser realizada de trs formas distintas
gerenciamento de energia [21]-[22]:
[4]:
x a utilizao de baixas tenses de alimentao, tais como
Atravs de um PC: Conceitualmente a mais simples.
3.3, 2.5 e 1.8 volts nas diferentes verses disponveis,
Basicamente faz uso dos equipamentos multimdia disponveis
possibilitando um consumo de energia muito abaixo dos
nos computadores, tais como microfones, placas de som e
encontrados em processadores DSP alimentados com 5
alto-falante;
volts;
Atravs de um dispositivo DSL (Digital Subscriber Line):
x os modos Sleep ou Idle possibilitam o desligamento
Neste caso, o uso do PC dispensvel. O telefone conectado
do relgio do processador em algumas partes internas
Internet atravs de um conector RJ-11 presente nos terminais
reduzindo o consumo de energia quando no h
do dispositivo DSL;
processamento em execuo;
Telefone IP: so os telefones tradicionais com conexo direta
x o divisor de tempo de ciclo de relgio programvel que Internet e com diferentes algoritmos de processamento de
configura diferentes valores de freqncias, via software, voz implementados em processador digital de sinais.
para se obter freqncia de clock mnima para uma tarefa As sees a seguir apresentam algumas informaes
particular; relevantes sobre VoIP.
x o controle dos perifricos que capacita o software DSP a
desabilitar dispositivos perifricos que no esto em uso e A. Cenrios para Aplicao de VoIP
habilit-los quando necessrio; Existem cinco cenrios possveis para transmisso de voz
RIBEIRO : PACKETS RECONSTRUCTION PROPOSALS APPLIED 5
sobre redes IP, PSTN (Packet Switched Telephone Network) e fim a fim; d) a utilizao de tcnicas de codificao de sinais
IP-PSTN (hbridas) [4], conforme descrito a seguir e ilustrado de voz e reconstruo de pacotes, enfatizando o uso eficiente
na Fig. 2: da largura de banda e a inteligibilidade do sinal.
Cenrio 1: representa o uso das redes PSTN como o nico
C. Desenvolvimento de Produtos VoIP
meio de transmisso de voz;
Cenrio 2: representa o futuro da telefonia, pois configura a De um modo geral, o desenvolvimento dos produtos para
realizao de ligaes telefnicas unicamente sobre redes por VoIP leva em conta quatro fatores importantes [4]:
comutao de pacote (redes IP); x a qualidade do sinal de voz comparada aos padres
Cenrio 3: configura a atual situao da VoIP, pois os dois disponvel para redes PSTN, mesmo considerando-se
terminais de telefonia envolvidos fazem uso de diferentes redes com diferentes nveis de QoS;
protocolos de comunicao para realizarem acesso s redes IP x a diminuio dos efeitos de latncia da rede, perda de
e PSTN; pacotes e ruptura de conexes, mesmo durante perodos
Cenrios 4 e 5: abrangem os protocolos utilizados na interface de congestionamentos ou quando mltiplos usurios
de cada terminal, enquanto outros protocolos so utilizados compartilham os mesmos recursos;
pelos backbones das redes IP e PSTN. x a interoperabilidade dos servios fornecidos pelas redes
IP e PSTN;
3
x o gerenciamento do sistema, a segurana e a forma de
PC
Telefone
bilhetagem.
Funes de Interoperabilidade
processadores, optou-se pelas placas EVM C6201 e DSK ControladorCodificao: Neste bloco esto contidas as rotinas
C6211. Os critrios utilizados para esta seleo foram os para habilitar o bloco ChaveI, a partir da informao de
seguintes: classificao dos sub-quadros de sinal de voz que permite o
x a obteno de uma placa que permitisse a implementao processo de embaralhamento, codificao e envio do quadro
dos algoritmos sem uma grande preocupao de custo codificado para o host atravs de uma conexo HPI do DSP
computacional juntamente ao fabricante, no caso a TI; [30]-[31], implementada no bloco DSPHostCom. Alm disso,
x a escolha de um processador com aritmtica em ponto o ControladorCodificao configura o codificador G.722.1
fixo e 16 bits, pois os mesmos tm custo menor que os [6] para as taxas de 16k, 24k e 32kbits/s e controla a execuo
processadores com aritmtica em ponto flutuante; das rotinas presentes no bloco Microfone, a partir das
x um ambiente de desenvolvimento de fcil familiarizao e informaes recebida do PC.
aprendizado. Por exemplo, o CCS da Texas Instruments ChaveI: realiza o embaralhamento SIF 2 [3]-[4] das
que se constitui num excelente ambiente de amostras pares ou mpares a serem submetidas ao processo de
desenvolvimento de algoritmos DSP; codificao, executado no bloco CodificadorG.722.1, de
x a necessidade de uma memria interna de tamanho acordo com a sinalizao do ControladorCodificao,.
razovel que minimizasse a quantidade de acessos BufferAmostrasPares: armazena as amostras pares do quadro
memria externa ao processador e, conseqentemente, o de 40ms ou 640 amostras a serem submetidas codificao,
uso eficiente da capacidade de processamento do DSP; ou seja, armazena 20ms ou 320 amostras do sinal de voz.
x a possibilidade de implementao de vrios canais, assim BufferAmostrasImpares: armazena as amostras mpares do
como em [23]-[24]; quadro de 40ms ou 640 amostras a serem submetidas
x a capacidade de processamento. codificao, ou seja, armazena 20ms ou 320 amostras do sinal
A Fig. 3 mostra o diagrama de blocos da implementao de voz.
em DSP dos algoritmos de processamento de sinais de voz no CodificadorG.722.1: contm as rotinas para realizar a
transmissor. Estes algoritmos foram implementados com a codificao dos buffers de amostras pares e mpares de acordo
linguagem ANSI C no ambiente de programao CCS da com a norma G.722.1 da ITU-T. Os quadros codificados so
Texas Instruments. O processador considerado foi o entregues ao bloco DSPHostCom.
TMS320C6201. DSPHostCom: realiza a comunicao entre o DSP e o PC
Os blocos do diagrama do codificador, conforme mostrado atravs de uma conexo HPI. responsvel pelo envio dos
na fig. 3, realizam as tarefas especificadas a seguir: quadros de amostras pares e mpares codificadas para o PC.
Microfone: Este bloco realiza a aquisio dos quadros de Alm disso, ele transfere as informaes e sinalizaes do PC
40ms ou 640 de sinal de voz, submetido a taxa de amostragem para o bloco ControladorCodificao.
igual a 16kHz e quantizados a 16 bits. Para realizar esta tarefa, Os blocos presentes no diagrama de blocos do
so implementadas as rotinas de configurao do Codec decodificador, mostrado na Fig. 5, realizam as seguintes
CS4231A da placa EVM C6201 [25] e do McBSP [26]-[27] tarefas:
para a comunicao entre o DSP e o codec de udio. Alm DSPHostCom: Alm das tarefas especificadas acima para o
disso, os canais de DMA 1 e 2 so configurados para a codificador, este bloco recebe os quadros vindos do PC,
realizao da aquisio dos quadros de amostras de voz atravs da conexo HPI, e envia e recebe a sinalizao para
utilizando o conceito ping-pong [28]. garantir a decodificao dos quadros codificados e recebidos
ClassificaoQuadroVoz: Neste bloco o quadro de 40 ms ou do PC.
640 amostras de sinal de voz dividido em 4 sub-quadros de ControladorDecodificao: Recebe o quadro codificado
10ms. Cada sub-quadro de 10ms submetido ao algoritmo juntamente com as informaes de codificao para realizar a
baseado em redes neurais para a classificao em silncio, voz reconstruo dos pacotes perdidos ou o desembaralhamento
sonora ou surda proposta em [3]-[4]. A Fig. 4 mostra a dos quadros recebidos, se no houver perda.
estrutura da rotina dentro deste bloco. As seguintes BufferAmostrasPares e BufferAmostrasImpares: realizam as
consideraes sobre esta estrutura foram implementadas: mesmas tarefas especificadas no diagrama do codificador.
x se todos os sub-quadros so classificados como silncio, DecodificadorG.722.1: contm os algoritmos para realizar a
ento o quadro de 40ms no submetido ao processo de decodificao dos quadros de amostras pares e/ou mpares. A
embaralhamento, codificao e envio para o PC; decodificao habilitada pelo ControladorDecodificao, a
x se no mximo trs sub-quadros so classificados como partir das informaes de perda dos quadros recebidas do PC.
silncio, ento os quadros classificados como silncio, ChaveI: de acordo com a sinalizao do
por sua vez, so especificados como surdos e os ControladorDecodificao executa o processo de
processos de embaralhamento, codificao e envio dos desembaralhamento ou de reconstruo de pacotes de acordo
quadros codificados para o PC so realizados. A com a sinalizao do ControladorDecodificao. Se por um
especificao dos sub-quadros de silncio como surdos lado a escolha da opo de desembaralhamento significa que
realizada para informar ao controlador de decodificao no houve perda de pacotes durante a transmisso, por outro,
que estes sub-quadros sero reconstrudos a partir da a considerao da reconstruo de pacotes executada quando
rotina para a reconstruo de voz surda. h perda de pacotes.
RIBEIRO : PACKETS RECONSTRUCTION PROPOSALS APPLIED 7
BufferAmostras Codificador
Pares G.722.1
Controlador
Codificaao
Desembaralhamento: contm a rotina que realiza o linguagem Assembly para otimizar o cdigo.
desembaralhamento dos quadros de amostras pares e mpares A utilizao da linguagem Assembly relevante para se
decodificadas. obter um melhor desempenho. No entanto, alguns problemas
ReconstruoPacote: contm as rotinas para realizar a de ordem prtica so observados, tais como:
reconstruo das amostras pares ou mpares com a tcnica x as rotinas em Assembly so dependentes da estrutura do
RITW para reconstruo de pacotes proposta [3]-[4]. A DSP;
estrutura implementada dentro deste bloco ilustrada na Fig. x a elaborao de rotinas em Assembly requer bastante
6. A reconstruo dos pacotes de amostras pares ou mpares conhecimento da mesma e da estrutura interna do DSP
ocorre em sub-quadros de 10ms armazenados nos blocos Sub- para se obter melhor desempenho do DSP.
QuadroiComPerda, i 1,...,4 . Posteriormente, os blocos A partir das consideraes acima, pode-se argumentar que
AmostrasSonoras e AmostrasSurdas armazenam os quadros a linguagem Assembly deve ser utilizada quando o programa
de amostras decodificados com perdas de acordo com a em questo implementado para alguma aplicao comercial,
classificao efetuada pelo algoritmo de classificao de j que o foco neste caso, a minimizao dos custos de
segmentos de voz no transmissor. Finalmente, os sub-quadros implementao dos equipamentos ou dispositivos. Por
so submetidos ao algoritmo de reconstruo contido nos exemplo, em [23] apresentada uma implementao de vrios
blocos Sub-QuadroiReconstrudo, i 1,...,4 . Os sub-quadros codificadores para 10 canais de telefonia, enquanto que a
reconstrudos so ordenados no bloco QuadroReconstrudo. implementao do codec G.722.1, proposta na presente
ChaveII: este bloco seleciona o quadro de sinal de voz original contribuio, contempla no mximo 4,2 canais, considerando
na sada do bloco Desembaralhamento, se no houve perda de f CPU 200 MHz .
pacotes, ou na sada do bloco ReconstruoPocote se houve A implementao do algoritmo RITW para a reconstruo
perda de pacotes, a partir da sinalizao do dos segmentos de sinais de voz foi bastante simples, pois a
ControladorDecodificao. mesma foi previamente implementada no MatLab com
AutoFalante: contm as rotinas para realizar a transferncia do aritmtica de 16 bits e, posteriormente, transladada para o
sinal de voz reconstrudo ou desembaralhado, via DMA, entre DSP [3]-[4].
a memria de dados e o auto-falante acoplado sada do CculoNz
codec CS4231A.
RedeNeural Classificao
O uso das tcnicas de otimizao de algoritmos DSP, Sub-Quadro1 ClculoEs
MLP
Decisor
Sub-Quadro1
disponveis em [31]-[36], possibilitou a diminuio do tempo
ClculoC1
de execuo das rotinas implementadas nos blocos descritos
acima para 7.85ms. Para se atingir os valores de otimizao CculoNz
mencionado anteriormente foi considerada a seguinte
RedeNeural Classificao
metodologia prtica: Sub-Quadro2 ClculoEs
MLP
Decisor
Sub-Quadro2
1o Passo: Limpar o cdigo ou torn-lo o mais simples possvel;
ClculoC1
2o Passo: Inserir intrinsic para operaes em 32 bits;
3o Passo: Inserir adaptaes da intrinsic de 32 bits para CculoNz
Con tr olad or
DSPHo s tCo m Ch ave I Ch ave II Au to Falan te
De co dificao
Bu ffe r Am os tr as De co d ificad or Re co ns tr u o
Im p ar e s G.722.1 Paco te
G0 2 g0(n)
Amostras Sub-Quadro1
Sonoras Reconstrudo
Sub-Quadro1 G1 2 g1(n)
ComPerda
Amostras Sub-Quadro1
G0 2 g0(n)
Surdas Reconstrudo
G0 2 g0(n)
Amostras Sub-Quadro2
Sonoras Reconstrudo
Sub-Quadro2 G1 2 g1(n)
ComPerda
Amostras Sub-Quadro2
G0 2 g0(n)
Surdas Reconstrudo
Quadro
G0 2 g0(n) Resconstrudo
Amostras Sub-Quadro3
Sonoras Reconstrudo
Sub-Quadro3 G1 2 g1(n)
ComPerda
Amostras Sub-Quadro3
G0 2 g0(n)
Surdas Reconstrudo
G0 2 g0(n)
Amostras Sub-Quadro4
Sonoras Reconstrudo
Sub-Quadro4 G1 2 g1(n)
ComPerda
Amostras Sub-Quadro4
G0 2 g0(n)
Surdas Reconstrudo
Por outro lado, a implementao da rotina de classificao pacotes sem problema de perda apresentada na Tab. 2. A
de segmentos de voz [3]-[4] teve um custo computacional tabela 3 mostra a largura de banda requisitada, pressupondo o
bastante elevado, pois esta realiza vrias operaes em ponto envio dos quadros de amostras pares submetidos ao codec
flutuante e como o processador C6201 de 16 bits, tais G.722.1 e a reconstruo das amostras mpares com a tcnica
operaes consomem bastante ciclos de execuo. RITW.
As colunas 2 e 3 da Tab. 1 mostram os desempenhos, em Como pode ser observado, o codec G.722.1, com algumas
milisegundos, das rotinas implementadas no DSP adaptaes, pode ser usado com taxas equivalentes aos codecs
TMS320C6201 (placa EVM C6201) e no TMS320C6211 para telefonia em banda estreita para canais de comunicao
(placa DSK C6211). A coluna 4, por sua vez, exibe os ganhos com garantia de QoS.
obtidos em porcentagem (%). Estes ganhos informam o TABELA 1.
CUSTO COMPUTACIONAL.
quanto a metodologia prtica foi eficiente em relao
Algoritmos C6201 C6211 Ganho
implementao direta das rotinas nos DSPs. EVM (ms) DSK (ms) (%)
Os algoritmos implementados no PC para interfaceamento Classificador Neural 3.00 3.60 128%
com a placa EVM C6201 e para a comunicao via Internet Embaralhamento 0.05 0.06 146%
com o protocolo UDP (User Data Protocol) foram elaborados Codificador G.722.1 3.99 4.85 331%
com a linguagem de programao C++ [37]-[38]. Decodificador G.722.1 3.86 4.78 335%
A largura de banda necessria para a transmisso dos Reconstruo de Pacotes 0.30 0.36 133%
Desembarralhamento 0.05 0.06 149%
RIBEIRO : PACKETS RECONSTRUCTION PROPOSALS APPLIED 9
TABELA 2. [13] T. Birus, D. Syiek, Optimizing ada compilers for DSP avionics
LARGURA DE BANDA REQUISITADA. applications, DSP Applications, Abril, 1993.
Codificador G.722.1 sem Codificador G.722.1 com [14] Ada C3x Development Tools, http://focus.ti.com/docs/tool/
supresso de silncio supresso de silncio toolfolder.jhtml? PartNumber=C3X-ADA-XX.
16kbits/s 8kbps [15] Ada 95, Certified processor list, http://adaic.org/compilers/cpl/lists/CPL-
ft-frame.html.
24kbtis/s 12kbps [16] IEEE Standards, http://www.techstreet.com/info/ieee.html.
32kbits/s 16kpbs [17] DSP Village - Texas Instruments. http:// dspvillage.ti.com.
TABELA 3. [18] TMS320C6211, http://focus.ti.com/docs/tool/toolfolder.jhtml, 2000.
LARGURA DE BANDA REQUISITADA. [19] B. Kornmeier, D. Gehrke, TPS330x supervising DSP and processor
applications, AAP power management, Texas Instruments Application
Codificador G.722.1 com Perda Codificador G.722.1 com Perda das
Report, SLVA056A, Ago., 2000.
das Amostras mpares Amostras mpares e supresso de
[20] TMS320C55x, Technical overview, Texas Instruments Application
silncio Report, SPRU393, Fev., 2000.
16kbits/s 8kbits/s [21] K. K. Parhi, VLSI digital signal processing systems, New York, Wiley,
12kbtis/s 6kbits/s 1999.
8kbits/s 4kbits/s [22] K. K. Parhi, Approaches to low-power implementations of DSP
systems, IEEE Trans. on Circuits and Systems I: fundamental
Theory and Applications, vol. 48, no. 10, pags. 1214-1224, Out., 2001
V. CONCLUSES [23] X. Fu, Z. Zhang, TMS320C6000 multichannel vocoder technology
demonstration kit host side design, Texas Instruments Application
A presente contribuio reuniu e discutiu os principais Report, SPRA558B, 2000.
critrios a serem considerados para a escolha adequada de um [24] X. Fu, TMS320C6000 multichannel vocoder technology demonstration
DSP. Alm disso, uma implementao em tempo real de kit target side design, Texas Instruments Application Report,
SPRA560B, Fev., 2000.
vrios algoritmos de processamento de sinais [3]-[4] passveis
[25] B. G. Carlson, TMS320C6000 McBSP interface to the CS4231A
de serem implementados numa soluo VoIP foi apresentada. multimedia audio codec, DNA Enterprises, Inc., Texas Instruments
Finalmente, utilizando-se o codec G.722.1 mostrou-se a baixa Application Report, SPRA477, Dez., 1998.
complexidade computacional e a aplicabilidade das tcnicas [26] S. Anjanaiah, TMS320C6000 McBSP initialization, Texas Instruments
Application Report, SPRA488, Nov., 1998.
proposta em [3]-[4] para reconstruir e classificar os segmentos [27] S. Anjanaiah. Using the TMS320C6x McBSP as a high speed
de sinais de voz e para gerar baixas taxas de transmisso. communication port, Texas Instruments Application Report, SPRA455,
May, 1998.
[28] D. Bell, TMS320C6000 DMA Example Applications, Texas
VI. AGRADECIMENTOS Instruments Application Report, SPRA529, Mar., 1999.
O autor agradece Texas Instruments do Brasil, na pessoa [29] E. Biscondi, Implementing the TMS320C6201/C6701/C6211 HPI boot
process, Texas Instruments Application Report, SPRA512, Jan., 1999.
dos amigos Nncio Perrella e Rafael de Souza, pelo apoio e [30] Z. Nikolic, TMS320C6201/6701 DSP host port interface (HPI)
suporte, sem os quais a implementao aqui mostrada no performance, Texas Instruments Application Report, SPRA449A, Abril,
seria possvel. Patrcia Nora de Souza Ribeiro pela preciosa 1998.
[31] Digital Signal Processing Solutions, TMS320C6000 programmers
contribuio na reviso do presente trabalho.
guide, Texas Instruments Application Report, SPRU198D, Maro,
2000.
VII. REFERNCIAS BIBLIOGRFICAS [32] Digital Signal Processing Solutions, Optimizing compiler users
guide. Texas Instruments Application Report, SPRU187I, Abril, 2000.
[1] J. Eyre, The digital signal processor derby, IEEE Spectrum, Junho
[33] R. Scales, ETSI math operations in C for the TMS320C62x, Texas
2001.
Instruments Application Report, SPRA617A, Nov., 2000.
[2] J. Eyre, J. Bier, DSPs court the consumer, IEEE Spectrum, Maro
[34] B. Huber, How to write multiplies correctly in C code, Texas
1999.
Instruments Application Report, SPRA683, June, 2000.
[3] M. V. Ribeiro, Tcnicas de reconstruo de pacotes aplicadas a
[35] R. Scales, Loop partitioning on the TMS320C6x, Texas Instruments
codificadores de forma de onda para VoIP Tcnicas propostas,
Application Report, SPRA517, Feb., 1999.
Revista de Engenharia Eltrica do IEEE Amrica Latina, 2003. (aceito
[36] R. Scales. Nested loop optimization on the TMS320C6x, Texas
para publicao)
Instruments Application Report, SPRA519, Feb., 1999.
[4] M. V. Ribeiro, Tcnicas de reconstruo de pacotes baseadas na
[37] R. C. Leinecker, T. Archer, G. Pease, Visual C++ 6 bible, Hungry
transformada wavelet e nas redes neurais aplicadas a codificadores de
Minds, Inc., 1998.
forma de onda em telefonia IP, Tese de Mestrado, UNICAMP, 2001.
[38] I. Horton, Beginning with visual C++ 6, Wrox Press Inc., 1998.
[5] ITU-T Recommendation G.722.1. Coding at 24 and 32kbit/s for hands-
[39] P. Lapsley, J. Bier, A. Shoham, Ed. A. Lee, DSP Processor
free operation in systems with low frame loss (PREPUBLISHED
Fundamentals : Architectures and Features, IEEE Press Series on Signal
RECOMMENDATION), 09/1999.
Processing, Wiley-IEEE Computer Society, 2001.
[6] Berkely Design Technology Inc., Choosing a DSP processor - white
paper, 2003.
[7] E. Goubault, Static analyses of floating-point operations, in Proc. 8th VIII. BIOGRAPHIES
International Static Analysis Symposium, Julho, 2001.
Moiss Vidal Ribeiro was born in Trs Rios, Brazil,
[8] Berkely Design Technology Inc., DSPs adapt to new challenges - white
in 1974. He received the B.S. degree from the
paper, 2003.
Federal University of Juiz de Fora (1999), and the
[9] Berkely Design Technology Inc., The BDTImark2000: A Summary
M.Sc. degree from the State University of Campinas-
Measure of DSP Speed - white paper, 2003.
UNICAMP (2001), both in Electrical Engineering.
[10] Berkely Design Technology Inc., Evaluating DSP processor
He is now pursuing his Ph.D. degree at UNICAMP.
performance - white paper, 2003.
He was granted Student Awards by both IECON01
[11] Digital Signal processing Solutions, Code Composer Studio - white
and ISIE03. His research interests concern linear
paper, Texas Instruments Application Report, SPRA520, maio, 1999.
and non-linear signal processing techniques applied
[12] Berkely Design Technology Inc., The evolution of DSP processors
to multimedia communication, power quality
white paper, 2003.
evaluation and powerline communicationS.