Você está na página 1de 17

Especificao de Arquitetura

Decodificador de udio MPEG-2 AAC-LC

Brazil-IP/UEFS Cliente: Brazil-IP

Verso: 1.8

Histrico de Reviso
Data 09/12/2008 13/12/2008 13/12/2008 14/12/2008 14/12/2008 14/12/2008 14/12/2008 14/12/2008 14/12/2008 Verso 1.0 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 Descrio Primeira verso do documento. Adio viso de processo UC 002. Adio viso de processo Acionar, UC 016, UC 017, UC 018 e UC 019. Adio viso de processo UC 015 Reviso vises de processo Acionar, UC 016, UC 017, UC 018 e UC 019. Adio vises de processo UC 007 e UC 009. Adio vises de processo UC 013. Adio vises de processo UC 011. Reviso da viso Acionar Autor Angelo Andrade Angelo Andrade Milton Cerqueira Henrique Brando Milton Cerqueira Eder Carneiro Marcelo Fontes Nelson Alves Milton Cerqueira

Brazil-IP/UEFS

Decodificador de udio MPEG-2 AAC-LC

Arquitetura

Pgina 2/17

ndice
1. 1.1 2. 3. 3.1 3.2 4. 5. 5.1 5.2 5.3 6. 6.1 6.2 6.3 6.4 6.5 6.6
Brazil-IP/UEFS

Introduo.................................................. 6 Viso geral do documento ............................ 6 Representao arquitetural ............................ 6 Objetivos e Restries arquiteturais.................. 6 Objetivos ................................................. 6 Restries ................................................ 6 Viso dos Casos de Uso................................... 7 Viso Lgica ................................................ 8 Comunicao ............................................ 8 Controle .................................................. 8 Dados...................................................... 8 Viso dos Processos..................................... 10 [UC 002] Deformatar Bitstream ................... 10 [UC 007] Dequantizar Coeficientes ............... 11 [UC 009] Reescalar Coeficientes .................. 11 [UC 011] Recuperar Amostras ..................... 12 [UC 013] Aplicar Janelamento ..................... 13 [UC 015] Sobrepr Janelas ......................... 14
Arquitetura Pgina 3/17

Decodificador de udio MPEG-2 AAC-LC

6.7 6.8 6.9

[UC 016] Disponibilizar Amostras PCM ........... 14 [UC 017] Ler........................................... 15 [UC 018] Escrever .................................... 15

6.10 [UC 019] Executar Operao ....................... 16 6.11 Acionar (UCs 001, 006, 008, 010, 012, 014) ... 16 7. Referncias .............................................. 17

Brazil-IP/UEFS

Decodificador de udio MPEG-2 AAC-LC

Arquitetura

Pgina 4/17

Figuras
Figura 1: Digrama de Casos de Uso. ...........................................................7 Figura 2: Camadas do Sistema..................................................................9 Figura 3: Viso de processo - UC Deformatar Bitstream. ................................ 10 Figura 4: Viso de processo - UC Dequantizar Coeficientes. ............................ 11 Figura 5: Viso de processo - UC Reescalar Coeficientes. ............................... 11 Figura 6: Viso de processo - UC Recuperar Amostras. .................................. 12 Figura 7: Viso de processo - UC Aplicar Janelamento. ................................. 13 Figura 8: Viso de processo - UC Sobrepr Janelas. ...................................... 14 Figura 9: Viso de processo - UC Disponibilizar Amostras PCM. ........................ 14 Figura 10: Viso de processo - UC Ler....................................................... 15 Figura 11: Viso de processo - UC Escrever. ............................................... 15 Figura 12: Viso de processo - UC Executar Operao. .................................. 16 Figura 13: Viso de processo - UCs Acionar (envolvendo Controlador Principal). ... 16

Brazil-IP/UEFS

Decodificador de udio MPEG-2 AAC-LC

Arquitetura

Pgina 5/17

1. Introduo
Este documento especifica a arquitetura do sistema Decodificador de udio MPEG-2 AAC-LC.

1.1 Viso geral do documento


O documento composto das seguintes sees: Seco 2 Representao arquitetural: descreve o que a arquitetura significa para o sistema e como ela representada. Seo 3 Objetivos e restries arquiteturais: objetivos e restries a serem atendidos pela arquitetura proposta. Seo 4 Viso dos casos de uso: explica os principais casos de uso do sistema. Seo 5 Viso lgica: descreve a representao lgica do sistema. Seo 6 Viso de processos: apresenta a descrio dos processos envolvidos, suas interaes e configuraes. Seo 7 Referncias: lista dos trabalhos referenciados neste documento.

2. Representao arquitetural
A arquitetura do sistema apresentada em 3 diferentes vises: casos de uso, viso lgica e viso de processos. A viso dos casos de uso apresentada atravs de diagramas de casos de uso e cenrios que incluem comportamentos relevantes para a arquitetura do sistema. A viso lgica mostra as classes (cpsulas, protocolos) organizadas em camadas, de acordo com sua funcionalidade primordial. A viso de processos apresenta a descrio das tarefas envolvidas nos casos de uso a serem realizados.

3. Objetivos e Restries arquiteturais


3.1 Objetivos
Os principais objetivos do sistema so os de implementar os requisitos especificados no documento de Requisitos [1], bem como realizar os casos de uso descritos no documento de Casos de Uso [2].

3.2 Restries
O sistema deve obedecer s restries no funcionais especificadas no documento de Requisitos [1] e seguir a norma ISO 13818-7 [3].

Brazil-IP/UEFS

Decodificador de udio MPEG-2 AAC-LC

Arquitetura

Pgina 6/17

4. Viso dos Casos de Uso


Abaixo, o diagrama de casos de uso do sistema, representando aquilo que o sistema deve realizar.

Figura 1: Digrama de Casos de Uso.

Brazil-IP/UEFS

Decodificador de udio MPEG-2 AAC-LC

Arquitetura

Pgina 7/17

5. Viso Lgica
Nesta seo, as classes do sistema so exibidas organizadas em trs camadas: Comunicao, Controle e Dados. Na seqncia, so descritas cada uma dessas camadas. Em seguida apresenta-se a representao das classes do sistema.

5.1 Comunicao
A camada de comunicao contm as classes responsveis pela comunicao entre o sistema e o reprodutor de udio digital (PCM), assim como entre o sistema e seu dispositivo de memria de apoio. O processo de comunicao se inicia com a solicitao do usurio, a qual faz o Controlador Principal acessar a memria do sistema a partir de um dado endereo (definido pela interface do usurio, externa ao IP-Core). Aps o carregamento do arquivo .aac na memria do sistema, o Controlador Principal aciona os mdulos internos do sistema, para obter o resultado da decodificao do arquivo .aac. As unidades de acesso de udio (frames) so decodificadas, gerando amostras PCM, as quais so temporariamente armazenadas na memria do sistema, para disponibilizao ao sistema externo de reproduo, taxa de 44.100 amostras PCM de 16 bits, por canal de udio (o sistema decodifica at 2 canais de udio).

5.2 Controle
A camada de controle contm as classes responsveis pelo controle de todas as aes desempenhadas pelo Decodificador MPEG-2 AAC-LC.

5.3 Dados
A camada de dados contm as classes que armazenam os dados necessrios para a realizao das aes do Decodificador MPEG-2 AAC-LC.

Brazil-IP/UEFS

Decodificador de udio MPEG-2 AAC-LC

Arquitetura

Pgina 8/17

Figura 2: Camadas do Sistema.

Brazil-IP/UEFS

Decodificador de udio MPEG-2 AAC-LC

Arquitetura

Pgina 9/17

6. Viso dos Processos


Na seqncia, so descritas as tarefas relacionadas execuo dos respectivos casos de uso do sistema [2], suas interaes e configuraes.

6.1 [UC 002] Deformatar Bitstream


<<capsule>> ControladorPrincipal barram entoControle: ControleModulos barram entoDados: CarregarPacotes/Arm azenarPacotes

<<protocol>> ArmazenarPacotes +arm azenarConfiguracao() +arm azenarFatorEscala() +arm azenarCoeficienteDecodificadoHuffm an()

<<protocol>> ControleModulos +acionarDeform atador() +fim Unidade() +fim DecodificacaoAAC()

<<protocol>> CarregarPacotes +carregarBuffer()

barram entoControle: ControleM odulos barram entoDados: CarregarPacotes/Arm azenarPacotes barram entoDefDecHuffm AcessoRegs_DecHuffm an: an

<<capsule>> Deformatador

<<capsule>> RegistradoresDefDecHuffman +bitStream Bitstream : +cabecalho: Cabecalho +rawDataBlock: RawDataBlock +valorFatorEscalaCodificado: Bitstream +valorFatorEscalaFinal: FatorEscala +valorCoeficienteCodificado: Bitstream +valorDecodificadoHuffm CoeficienteEspectral an: <<protocol>> AcessoRegs_DecHuffman +deform atarStream () +decodificarFatorEscala() +decodificarCoeficienteEspectral() barram entoDefDecHuffm AcessoRegs_DecHuffm an: an barram entoDefDecHuffm AcessoRegs_DecHuffm an: an . . <<capsule>> DecodificadorHuffman

Figura 3: Viso de processo - UC Deformatar Bitstream.

Brazil-IP/UEFS

Decodificador de udio MPEG-2 AAC-LC

Arquitetura

Pgina 10/17

6.2 [UC 007] Dequantizar Coeficientes


<<capsule>> ControladorPrincipal barram entoControle: ControleM odulos barram entoDados: CarregarPacotes/Arm azenarPacotes

<<protocol>> ArmazenarPacotes +arm azenarCoeficientesDeq()

<<protocol>> ControleModulos +acionarDequantizador()

<<protocol>> CarregarPacotes +carregarCoeficientesQ()

barram entoControle: ControleModulos barram entoDados: CarregarPacotes/Arm azenarPacotes barram entoDequantizador: AcessoRegsDequantizador .

<<capsule>> Dequantizador

<<protocol>> AcessoRegsDequantizador +Dequantizar()

<<capsule>> RegistradoresDequantizador +valorDecodificadoHuffm CoeficienteEspectral an: +valorDequantizado: CoeficienteEspectral barram entoDequantizador: AcessoRegsDequantizador

Figura 4: Viso de processo - UC Dequantizar Coeficientes.

6.3 [UC 009] Reescalar Coeficientes


<<capsule>> ControladorPrincipal barram entoControle: ControleM odulos barram entoDados: CarregarPacotes/Arm azenarPacotes

<<protocol>> ArmazenarPacotes +arm azenarCoeficientesEspectrais()

<<protocol>> ControleModulos +acionarReescalador()

<<protocol>> CarregarPacotes +carregarInstrucaoR() +carregarFatorEscala() +carregarCoeficientesD()

barram entoDados: CarregarPacotes/Arm azenarPacotes barram entoControle: ControleM odulos barram entoReescalador: AcessoRegsReescalador

<<capsule>> Reescalador

. <<protocol>> AcessoRegsReescalador +aplicarFatorEscala() <<capsule>> RegistradoresReescalador +valorFatorEscala: FatorEscala +valorDequantizado: CoeficienteEspectral +valorFinal: CoeficienteEspectral barram entoReescalador: AcessoRegsReescalador .

Figura 5: Viso de processo - UC Reescalar Coeficientes.

Brazil-IP/UEFS

Decodificador de udio MPEG-2 AAC-LC

Arquitetura

Pgina 11/17

6.4 [UC 011] Recuperar Amostras


<<capsule>> ControladorPrincipal

barram entoControle: ControleM odulos barram entoDados: CarregarPacotes/Arm azenarPacotes

<<protocol>> ArmazenarPacotes +arm azenarAm ostras()

<<protocol>> ControleModulos +acionarIM DCT()

<<protocol>> CarregarPacotes +carregarCoeficientes()

barram entoControle: ControleM odulos barram entoIMDCT: AcessoRegsIMDCT

<<capsule>> IMDCT

barram entoDados: CarregarPacotes/Arm azenarPacotes

<<protocol>> AcessoRegsIMDCT +aplicarTransform ada() +adicionarCoeficientes() +adicionarJanelas() +m ontarAm ostraPCM()

<<capsule>> RegistradoresIMDCT +tipoJanela: bit<1> +valorIM DCT: collection<ColecaoRefJanela> barram entoIM DCT: AcessoRegsIM DCT

Figura 6: Viso de processo - UC Recuperar Amostras.

Brazil-IP/UEFS

Decodificador de udio MPEG-2 AAC-LC

Arquitetura

Pgina 12/17

6.5 [UC 013] Aplicar Janelamento


<<capsule>> ControladorPrincipal barram entoControle: ControleM odulos barram entoDados: CarregarPacotes/Arm azenarPacotes

<<protocol>> ArmazenarPacotes +arm azenarAm ostrasJaneladas()

<<protocol>> ControleModulos +acionarJanelam ento()

<<protocol>> CarregarPacotes +carregarInstrucaoJ() +carregarAm ostrasNJaneladas()

barram entoControle: ControleModulos barram entoDados: CarregarPacotes/Arm azenarPacotes . barram entoWBS: AcessoRegsJanelam ento

<<capsule>> W indow ingBlockSw itching

<<protocol>> AcessoRegsJanelamento +aplicarJanelam ento() +decodificarSenoEsq() +decodificarSenoDir() +decodificarKbdEsqr() +decodificarKbdDir()

<<capsule>> RegistradoresW BS +funcaoBlocoAnterior +tipoSequencia: bit<2> +tipoFuncao: bit<1> +num ostras: {256, 2048} Am +am ostrasEntrada: collection<num ostras> Am +am ostrasSaida: collection<num ostras> Am barram entoWBS: AcessoRegsJanelam ento .

Figura 7: Viso de processo - UC Aplicar Janelamento.

Brazil-IP/UEFS

Decodificador de udio MPEG-2 AAC-LC

Arquitetura

Pgina 13/17

6.6 [UC 015] Sobrepr Janelas


<<capsule>> ControladorPrincipal barram entoControle: ControleModulos barram entoDados: CarregarPacotes/Arm azenarPacotes

<<protocol>> ArmazenarPacotes +arm azenarAm ostrasSobrepostas()

<<protocol>> ControleModulos +acionarSobreposicao()

<<protocol>> CarregarPacotes +carregarAm ostrasJaneladas()

barram entoDados: CarregarPacotes/Arm azenarPacotes barram entoControle: ControleM odulos barram entoOverlapping: AcessoRegsOverlapping

<<capsule>> Overlapping +som ar(valor1, valor2)

<<protocol>> AcessoRegsOverlapping +aplicarSobreposicao()

<<capsule>> RegistradoresOverlapping +quadruplaAm ostras: bit<64> +valoresSobrepostos: bit<32> barram entoOverlapping: AcessoRegsOverlapping .

Figura 8: Viso de processo - UC Sobrepr Janelas.

6.7 [UC 016] Disponibilizar Amostras PCM


<<capsule>> ControladorPrincipal +am ostraLC +am ostraRC <<protocol>> E nviarParAmostras +enviarParAm ostras(ParAm ostras)

barram entoControle: EnviarParAm ostras barram entoDados: EnviarParAm ostras

<<capsule>> SistemaReproducao

barram entoControle: EnviarParAm ostras barram entoDados: EnviarParAm ostras .

Figura 9: Viso de processo - UC Disponibilizar Amostras PCM.

Brazil-IP/UEFS

Decodificador de udio MPEG-2 AAC-LC

Arquitetura

Pgina 14/17

6.8 [UC 017] Ler

<<capsule>> ControladorPrincipal

<<protocol>> Ler +Ler() +finalizarOperacao()

barram entoControle: Ler barram entoEnderecos: Ler barram entoDados: Ler

barram entoControle: Ler barram entoDados: Ler barram entoEnderecos: Ler

<<capsule>> ControladorMemoriaSistema

Figura 10: Viso de processo - UC Ler.

6.9 [UC 018] Escrever


<<protocol>> E screver +Escrever() +finalizarEscrita() +operacaoFinalizada() barram entoControle: Escrever barram entoEnderecos: Escrever barram entoDados: Escrever

<<capsule>> ControladorPrincipal

barram entoControle: Escrever barram entoEnderecos: Escrever barram entoDados: Escrever

<<capsule>> ControladorMemoriaSistema

Figura 11: Viso de processo - UC Escrever.

Brazil-IP/UEFS

Decodificador de udio MPEG-2 AAC-LC

Arquitetura

Pgina 15/17

6.10 [UC 019] Executar Operao


<<protocol>> ExecutarOperacao +acionarMem oriaSistem a() +fornecerLinha() +tipoOperacao() +fornecerColuna() +enviarDados() +habilitarOperacao() +NOP() +retornarDados() +autoPrecharge() +operecaoFinalizada()

<<capsule>> ControladorMemoriaSistema

barram entoControle: ExecutarOperacao barram entoDados: ExecutarOperacao barram entoEnderecos: ExecutarOperacao

barram entoControle: ExecutarOperacao barram entoDados: ExecutarOperacao barram entoEnderecos: ExecutarOperacao

<<capsule>> MemoriaSistema

Figura 12: Viso de processo - UC Executar Operao.

6.11 Acionar (UCs 001, 006, 008, 010, 012, 014)

<<protocol>> ControleModulos +acionarDeform atador() +fim Unidade() +fim DecodificacaoAAC() +acionarDequantizador() +acionarReescalador() +acionarIMDCT() +acionarJanelam ento() +acionarSobreposicao()

<<capsule>> Deformatador

barram entoControle: ControleModulos barram entoDados: CarregarPacotes/Arm azenarPacotes

<<capsule>> Dequantizador

barram entoControle: ControleM odulos barram entoDados: CarregarPacotes/Arm azenarPacotes <<protocol>> CarregarPacotes <<capsule>> ControladorPrincipal +am ostraLC +am ostraRC +carregarBuffer() +carregarCoeficientesQ() +carregarInstrucaoR() +carregarFatorEscala() +carregarCoeficientesD() +carregarCoeficientes() +carregarInstrucaoJ() +carregarAm ostrasNJaneladas() +carregarAm ostrasJaneladas()

<<capsule>> Reescalador

barram entoControle: ControleModulos barram entoDados: CarregarPacotes/Arm azenarPacotes

barram entoControle: ControleModulos barram entoDados: CarregarPacotes/Arm azenarPacotes

<<capsule>> IMDCT

barram entoControle: ControleModulos barram entoDados: CarregarPacotes/Arm azenarPacotes <<protocol>> ArmazenarPacotes +arm azenarConfiguracao() +arm azenarFatorEscala() +arm azenarCoeficienteDecodificadoHuffm an() +arm azenarCoeficientesDeq() +arm azenarCoeficientesEspectrais() +arm azenarAm ostras() +arm azenarAm ostrasJaneladas() +arm azenarAm ostrasSobrepostas() <<capsule>> W indow ingB lockSw itching

barram entoControle: ControleM odulos barram entoDados: CarregarPacotes/Arm azenarPacotes

<<capsule>> O verlapping

barram entoControle: ControleModulos barram entoDados: CarregarPacotes/Arm azenarPacotes

Figura 13: Viso de processo - UCs Acionar (envolvendo Controlador Principal).

Brazil-IP/UEFS

Decodificador de udio MPEG-2 AAC-LC

Arquitetura

Pgina 16/17

7. Referncias
[1] Decodificador de udio MPEG-2 AAC-LC - Especificao de Requisitos, verso 1.7. [2] Decodificador de udio MPEG-2 AAC-LC - Especificao de Casos de Uso, verso 1.6. [3] MPEG-2 Part 7: Audio (ISO 13818-7), 2004.

Brazil-IP/UEFS

Decodificador de udio MPEG-2 AAC-LC

Arquitetura

Pgina 17/17

Você também pode gostar