por palavras chave: processadores de sinais digitais, processamento de sinais em tempo-real. INTRODUÇÃO

Documentos relacionados
AULA1 Introdução a Microprocessadores gerais

Sistemas Embarcados. Introdução aos sistemas embarcados

Unidade Central de Processamento (CPU) Processador. Renan Manola Introdução ao Computador 2010/01

O Hardware Dentro da Unidade do Sistema

Processadores. Prof. Alexandre Beletti Ferreira

Família CJ2. Novos CLPs com alta qualidade comprovada. Controladores Programáveis

1. NÍVEL CONVENCIONAL DE MÁQUINA

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho

Figura 1 - O computador

FUNDAMENTOS DE HARDWARE COMO FUNCIONA UM PC? Professor Carlos Muniz

Computadores de Programação (MAB353)

1.1. Organização de um Sistema Computacional

Aula 26: Arquiteturas RISC vs. CISC

Sistemas de Computação. Dentro da Unidade do Sistema

Capítulo 4. MARIE (Machine Architecture Really Intuitive and Easy)

Prof. Esp. Lucas Cruz

Disciplina: Introdução à Informática Profª Érica Barcelos

CPU Unidade Central de Processamento. História e progresso

Organização e Arquitetura de Computadores I. de Computadores


Informática, Internet e Multimídia

Organização de Computadores

Barramentos - BUS. Professor Especialista: Airton Ribeiro de Sousa

SIS17-Arquitetura de Computadores

Arquitetura e Organização de Computadores

Espectro da Voz e Conversão A/D

Fundamentos de Hardware. 1. Placa Mãe

Profs. Deja e Andrei

LÓGICA DE PROGRAMAÇÃO PARA ENGENHARIA INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES

Você acha que não precisa de um FPGA? Pense melhor!

Ao longo do presente capítulo será apresentada uma descrição introdutória da tecnologia FPGA e dos módulos básicos que a constitui.

Aula 2 Modelo Simplificado de Computador

1. CAPÍTULO COMPUTADORES

Arquitetura de Computadores I

Organização de Computadores 1

Informática I. Aula 4. Aula 4-11/09/2006 1

Por razões, é requerido um módulo de E/S, que deve desempenhar duas funções principais:

Componentes do Computador e. aula 3. Profa. Débora Matos

ANÁLISE ESPECTRAL DE SINAIS DOPPLER COM O MODELO AUTOREGRESSIVO: VANTAGENS E DESVANTAGENS

Fundamentos de Hardware

Edeyson Andrade Gomes

Estrutura de um Computador. Linguagem de Programação Rone Ilídio UFSJ - CAP

1 O que é um computador? Definição uma máquina que lê dados, efectua cálculos e fornece resultados.

Aula 04 B. Interfaces. Prof. Ricardo Palma

Arquitetura de Computadores Arquitetura de entrada e saída

AUTOMAÇÃO DE ESCRITÓRIOS ADE

INTRODUÇÃO BARRAMENTO PCI EXPRESS.

Sistemas Computacionais II Professor Frederico Sauer

Introdução à Informática

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES

Capítulo I : Noções Gerais

1.3. Componentes dum sistema informático HARDWARE SOFTWARE

ARQUITETURA DE COMPUTADORES

Para existência de um sistema de informação, fazem-se necessários três componentes, são eles:

CP C U P U - Un U i n da d d a e d e Ce C n e t n ral a de d e Pr P oc o es e sam a e m n e t n o o Pr P oc o es e sad a o d r o Aula 03

Introdução à Arquitetura de Computadores

Introdução à Arquitetura de Computadores IFES Campus Serra

Sistema Operacional Correção - Exercício de Revisão

TI Aplicada. Aula 03 Componentes Básicos Hardware e Rede. Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com

ARQUITETURA DE COMPUTADORES

Escola Secundária de Emídio Navarro

Introdução aos Computadores

Introdução à Computação: Arquitetura von Neumann

Introdução a Informática. Prof.: Roberto Franciscatto

Informática. Prof. Macêdo Firmino. Macêdo Firmino (IFRN) Informática Setembro de / 25

Dispositivos de Entrada e Saída

CAPÍTULO 5. INTERFACES PARA PERIFÉRICOS DE ARMAZENAMENTO INTERFACES DIVERSAS: FIREWIRE, SPI e I 2 C INTERFACES COM O MUNDO ANALÓGICO

Computador = Hardware + Dados

Componentes de um computador típico

Unidade Central de Processamento Organização da UCP Execução de instruções em paralelo ("pipeline") Execução de programas

Scanners Manual Básico. Um guia prático e rápido para conhecer o melhor tipo de equipamento para seus trabalhos.

UNIVERSIDADE FEDERAL DE SANTA CATARINA MODELAGEM DE UMA PLATAFORMA VIRTUAL PARA SISTEMAS EMBUTIDOS BASEADA EM POWERPC

Sistemas Operacionais. Prof. André Y. Kusumoto

Introdução à Programação de Computadores

Componentes de um Sistema de Computador

A Evolução dos Sistemas Operacionais

Prof. Daniel Gondim Informática

Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores.

Sistemas Operacionais

Arquitetura e Organização de Computadores I

Microcontroladores e Microprocessadores

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO

Multiplexador. Permitem que vários equipamentos compartilhem um único canal de comunicação

PROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar

CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA

Sistemas Distribuídos

CONTROLADOR DIGITAL Multi-Loop. smar

Aula 11 27/10/2008 Universidade do Contestado UnC/Mafra Sistemas de Informação Arquitetura de Computadores Prof. Carlos Guerber PROCESSADOR INTRODUÇÃO

1. Apresentação Objetivos

Fundamentos de Hardware

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES ARQUITETURAS RISC E CISC. Prof. Dr. Daniel Caetano

Informática. Aulas: 01 e 02/12. Prof. Márcio Hollweg. Visite o Portal dos Concursos Públicos

FIREWIRE. O logotipo padronizado: Suas principais vantagens:

Processamento de Dados

ULA- Unidade Lógica Aritmética. Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h

CATÁLOGO TÉCNICO DE PRODUTO

U E S C. Introdução à Ciência da Computação

Introdução. A Informação e sua Representação (Parte III) Universidade Federal de Campina Grande Departamento de Sistemas e Computação

Guilherme Pina Cardim. Relatório de Sistemas Operacionais I

Transcrição:

RBE. VOL. 7 N. 1 1990 PROCESSADORES DE SINAIS DIGITAIS DESCRIÇAo DE UM LABORATÓRIO DE PROCESSAMENTO DIGITAL DE SINAIS EQUIPADO COM DSPs PARA APLICAÇõES EM ENGENHARIA BIOMÉDICA por Fernando S. Schlindwein 1 e David H. Evani RESUMO - As facilidades do laboratório de processamento de sinais da Leicester Royal Infirmary, que vem usando processadores de sinais digitais desde 1986 na análise de sinais de ultra-som Doppler são descritas; as possíveis vantagens de um laboratório de processamento digital de sinais contar com processadores de sinais digitais acoplados a microcomputadores são discutidas; uma "estrutura mínima" para montar um laboratório de processadores de sinais digitais é descrita; e algumas aplicações em Engenharia Biomédica são citadas. palavras chave: processadores de sinais digitais, processamento de sinais em tempo-real. INTRODUÇÃO Por que usar processadores de sinais? o processamento digital de sinais da faixa de áudio em tempo-real envolve pelo menos dois tipos de atividades para as quais um microcomputador moderno comum (tipo IBM PC ou Macintosh, por exemplo) não é bem preparado: a amostragem do sinal (que requer tempo de resposta de rotinas de serviço de interrupção muito rápido ou hardware específico para a amostragem dos sinais) e o próprio processamento (que usualmente requer instruções de multiplicar-acumular muito rápidas). Microcomputadores simplesmente não foram projetados para o tipo de tarefas envolvidas em processamento digital de sinais de áudio em tempo-real. Mesmo para processamento "off-tine" muitas de nossas pesquisas envolvem programas que "rodam" durante horas a fio simplesmente porque o volume de processamento l-professor Assistente do Departamento de Engenharia Eletrônica da Escola de Engenharia da UFRJ, e do Programa de Engenharia Biomédica da COPPE/UFRJ, CEP 21945 - Rio de Janeiro, RJ. Brasil. (endereço para correspondência). 2.Professor de Física Médica, Leicester Royal Infirmary, Department of Medicai Physics & Clinicai Engineering, Leicester LEI 5WW, UK. -79-

envolve milhares de FFTs (ou convoluções, ou filtros digitais...). Processadores de sinais digitais foram projetados exatamente para os tipos de operações mais comumente usadas em processamento de sinais (ie, multiplicar-acumular rápido, muito rápido), portanto são muito mais adequados para essas operações do que os microprocessadores mais populares presentes nos modernos PCs (8Ox86 e 68OxO). As principais diferenças entre um DSP e um C são que os DSPs têm "buses" de dados e de endereços separados que acessam duas memórias fisicamente distintas, dotando o processador de um certo paralelismo, e a presença de um (ou dois) multiplicador implementado em hardware, capaz de multiplicar-acumular em um ciclo de máquina, ao invés de multiplicar através de instrução micro-codificada e somar depois. Um tipo de operação dos mais comuns em processamento digital de sinais é a implementação de somatórios do tipo: N Tabela 1 - Tempos de execução de uma multiplicação-soma 8 MHz IBM-AT repu 80286) multiplicação 43 clocks (5.375 ~s) soma 10 clocks (1.250 ~s) 40 MHZ TMS320C25 4 clocks (100 ns) total. 6.625 ~s o DSP é 100 ns 66 vezes mais rápido. que aparecem em FFTs, em convoluções, correlações e filtros digitais. Uma comparação entre as velocidades de execução de uma das multiplicações-soma executada pela CPU de um IBM AT compatível (80286 @ 8MHz) e um DSP standard (TMS32OC25) é dada na tabela 1. A tabela 2 mostra os tempos de resposta de uma rotina de serviço de interrupções mínima que simplesmente lê um dado de um conversor A/D, salvando e restaurando o contexto do processador. Uma comparação dos tempos de processamento para uma FFT de 256 complexos é dada na tabela 3, ambos os processadores programados em Assembly, rodando o clássico algoritmo "radix-z" e utilizando coeficientes trigonométricos de uma tabela de valores précalculada. -80-

Tabela 2 - Tempos de execução de uma amostragem por interrupção (c1ocks e /IJs) 8 MHz IBM-AT (CPO 80286) 40 MHz TMS320C25 latência 47 clocks 8 clocka salvamento e restauraçâo de contexto 269 clocks total 33.625 ~s 64 clocks 1.8 ~. O DSP, 19 vezes mais rap~do. o DSP é 19 vezes mais rápido. Tabela 3. Tempos de execução de uma FFT de 256 pontos complexos com aritmética inteira, ambos os processadores programados em Assembly. 8 MHz IBM-AT (CPO 80286) 160 ms (Avila, Cavalcanti e Nadal, 1988) O DSP é 40 MHz TMS320C25 2.26 ms (Papamichalis and So, 1986) aprox. 70 vezes mais rapido. Considerando-se os tempos dados nas tabelas acima, é evidente que DSPs são mais adequados que microcomputadores padrão para processamento de sinais. Por outro lado, computadores pessoais são excelentes bases de desenvolvimento de software (assemblers, compilers, cross-compilers e linkers são disponíveis) e para armazenagem e saída de resultados (interfacesp/ teclado, tela gráfica, diskettes, discos rígidos, impressora, plotter). Um sistema combinando as qualidades de versatilidade e baixo custo de um PC e o grande desempenho em tarefas de processamento digital dos DSPs é muito bem adequado para servir como estação de trabalho para o desenvolvimento e o ensino de técnicas de processamento digital de sinais, em particular para processamento em tempo-real. O custo básico de dotar um laboratório de processamento digital de sinais já existente das facilidades para utilizar D~Ps é mínimo - uma placa de desenvolvimento com software custa em tomo de US$ 3600, o que é aproximadamente o preço de um PC, sendo que o sistema resultante dessa combinação de PC + DSP executa algumas tarefas de proces-samento de sinais até 70 vezes -81-

mais rápido que um PC sozinho. O Laboratório de Física Médica da Leicester Royal InflJ11lary possui tais facilidades, e é com base na experiência de trabalho desde 1986 em tal laboratório que descrevemos uma "estrutura mínima" para montar um laboratório de processadores de sinais digitais. ESTAÇÃO DE TRABALHO COM DSP A estação de trabalho básica que usamos na LRI consta apenas de um PC equipado com uma placa de DSP para desenvolvimento. A placa é "plug-in" para IBM-PC/IBM-PC-AT compatíveis. Em termos de software, o DSP é programado em Assembly e o PC em Assembly (para aplicações em tempo-real) e fortran-77. Placas de DSP para desenvolvimento Uma placa de desenvolvimento que conhecemos bem é a da LSI. Baseada no TMS32OC25 (um DSP de palavra inteira da Texas Instruments) com clock de 40 MHz, a placa executa 10 MIPS (milhões de instruções por segundo). A placa standard tem 8 kwords de memória de programa e 8 kwords de memória de dados, ambas expandíveis até 64 kwords na placa, conversores A/D e D/A de 16 bits e lógica de controle para conversão A/D com temporizador programável (taxa de conversão até 58 khz). PROPOSTA PARA EQUIPAR UM LABORATÓRIO DE DSPS: A Texas Instruments mantém centros de treinamento na Inglaterra que ministram cursos sobre DSPs cobrando í1200 por quatro dias de aulas. Alguns centros de ensino e pesquisa no Brasil possuem laboratórios de processamento de sinais digitais bastante bem equipados em termos de infra-estrutura. Para aqueles centros que desejam expandir sua atuação e ter experiência com DSPs, propomos uma trajetória efetiva e barata: a instalação de estações de trabalho baseadas em um PC e uma placa de desenvolvimento de DSP. Numa fase inicial, DSPs de aritmética inteira são adequados: em muitos casos ponto-flutuante não é essencial (Welch 1969, Schlindwein 1989). Processadores de ponto-flutuante ainda são mais caros (comparar os 1:24.00 por um TMS32OC25 de aritmética inteira, aos!375 por um TMS32OC30 ou os!1s0 por um WE DSP32C, da AT&T, os dois de ponto-flutuante), mas o preço vem baixando. Listamos, em seguida os ítens de hardware e software básicos para o laboratório lmoar seu funcionamento (assinalados com abaixo) seguidos dos elementos de apoio e expansão de atividades (assinalados com ). Alguns dos ítens listados já existem em bons laboratários de processamento de sinais, é claro. Os preços listados em dólares são estimativas aproximadas, mas os valores em libras esterlinas são exatos (obtidos de firmas locais na Inglaterra): -82-

IBM-PC/AT compatíveis com tela VGA (US$ 45(0); placas de desenvolvimento c/ DSP de aritmética inteira (í 1995 OUS$ 3600 por placa com TMS32OC25 ou similar incluindo software básico, ie, monitor, loader e assembler); assembler p/pc (US$ 100, MS MASM, Borland TASM, ou similar); assembler p/dsp (incluído no preço da placa de desenvolvimento dado acima, í 160 O US$ 280 caso comprado em separado); compilador(es) para PC (US$ 400 cada, C & Fortran); impressora gráfica de qualidade (US$ 2300, HP laser jet série lu ou similar), e compiiador(es) para DSP (í 675 O USS 1200, Compilador C); flltro analógicos "anti-aliasing", (programáveis pelo PC (projetados e montados "sobmedida", de acordo com o tipo de sinais a serem estudados, US$ 100 p/ custo dos componentes); tela gráfica de alta resolução (1024 x 768 x 256) e máquina fotográfica (US$ 2000 para tela gráfica - interface e monitor "multi-sync" e US$ 400 para câmara; placas de desenvolvimento com DSP de ponto flutuante (í 3995 O US$ 6900 p/ TMS32OC30 ou í 2395 O US$ 4150 p/ DSP32C, incluindo software básico com assembler/linker e interface p/applicações); pacote de software p/ flltros digitais í 599 O US$ 1050; plotter (US$ 1500, HP7475 ou similar). APLICAÇõES EM ENGENHARIA BIOMÉDICA E PERSPECTIVAS Um laboratório de EB equipado com estações de trabalho conforme as descritas acima pode desenvolver pesquisa em: processamento de sinais Doppler em tempo-real (Schlindwein e Evans 1987, 1989, Murphy et ai 1988), processamento da fala em tempo-real (AtaI e Hanauer, 1971, Schafer e Rabiner 1975), monitoração de pacientes, monitoração fetal, controle de prósteses, processamento de imagens médicas, além de acelerar procedimentos tais como mapeamento de campo acústico de transdutores, e aplicações genéricas tais como transformadas de Fourier, transformadas de Hilbert, flltragem digital, ftltragem adaptativa (Skagen, 1988, Talhami e Kitney, 1988), convolução, correlação e identificação de padrões, para citar algumas aplicações (Texas Instruments, 1986). Acreditamos que os processadores de sinais digitais vieram para ficar, e que há um nicho de mercado para microcomputadores como o Next, que incorpora um DSP na sua arquitetura, como standard, para processamento de sinais de áudio em tempo-reai. AGRADECIMENTOS FSS agradece a UFRJ e ao CNPq pelo apoio financeiro e os autores agradecem a Mike J. Smith pelo desenvolvimento da FFT em Assembly para o Pc. -83-

REFERÊNCIAS ATAL, B.S., and HANAUER, S.L. (1971), "Speech analysis and synthesis by linear prediction of the speech wave", The Journal of the Acoustical Society of America, volume 50, number 2, pages 637-655. AVILA, A.S.R., CAVALCANTI, S.c., e NADAL, J. (1988), "Sbtema experimental de eletroencefakgrafia com análise espectral e mapeamento da atividade cortical baseado em microcomput&dor", Revista Brasileira de Engenharia, Caderno de Engenharia Biomédica, volume 5, número 1, páginas 91-103. MURPHY, c., COATS, A., CONWAY, J. COLDITZ, P., and ROLFE, P. (1988), "Doppler ultrasound signal analysis based on the TMS320 signal processor", Journal of Biomedical Engineering volume 10, number 4, pages 127-129. PAPAMICHALIS, P., and SO, J. (1986), "Implementation of fast Fourier transform algorithms with the TMS32020", In Digital signal processing applications with the TMS320 family. Theory, algorithms and implementations, Texas Instruments. chapter 4, pages 69-168. SCHAFER, RW., and RABINER, L.R (1975), "Digital representations of speech signals", Proceedings of the IEEE, volume 63, number 4, pages 662-677. SCHLINDWEIN, F.S., e EVANS, D.H. (1987), "Análise espectral de sinais Doppler e geração de sonogramas em tempo-real utilizando processador de sinais Digitais e microcomputador", Revista Brasileira de Engenharia. CadernQS de Engenharia Biomédica. volume 4, número 2, páginas 2547. SCHLINDWEIN, F.S., e EVANS, D.H. (1989), "A real-time auto-regressive spectrum analyzer for Doppler ultrasound signals", Ultrasound in Medicine & Biology, volume 15, number 3, pages 263-272. SKAGEN, D.W. (1988), "Estimation of running frequency spectra using a Kalman filter algorithm", Journal of Biomedical Engineering, volume 10, number 5, pages 275-279. TALHAMI, H.E., and KITNEY, RI. (1988), "Maximum likelihood frequency tracking of the audio pulsed Doppler ultrasound signal using a Kalman ftlter", Ultrasound in Medicine & Biol., volume 14, number 7, pages 599-609. TEXAS INSTRUMENTS (1986), Digital signal processing applications with the TMS320 family. Theory, algorithms and implementations. WELCH, P.D. (1969), "A ftxed-point fast Fourier transform error analysis", IEEE Transactions on Audio and Electroacoustics, volume AU-17, number 2, pages 151-157. -84-

DIGITAL SIGNAL PROCESSORS DESCRIPTION OF A DIGITAL SIGNAL PROCESSING LABORATORY EQUIPPED WITH DSPS FOR APPLICATIONS IN BIOMEDICAL ENGINEERING ABSTRACT - The facilities of the digital signal processing laboratory at the Leicester Royal Infirmary, which has been using digital signal processors (DSPs) since 1986 for the analysis of Doppler signals in real-time, are described. The possible advantages of a digital signal processing laboratory using DSPs in conjunetion with microcomputers are discussed. A "minimum strueture" for starting a DSPs laboratory is descnbed, and some applications in Biomedical Engineering are suggested. kev words: digital signal processors, real-time digital signal processing.., -85-