O documento descreve o processador digital de sinal TMS320VC5509A da Texas Instruments. O processador possui um núcleo C55X com quatro unidades funcionais e pipeline de duas fases. Ele suporta três modos de endereçamento e possui 78 registradores mapeados em memória e periféricos integrados como timers e portas seriais.
Esta palestra procurará mostrar alguns dos “detalhes internos” dos cores da z14: O Fetch, Parsing, Decode e Issue ‘Out of Order’ das instruções às suas várias Execution Units, terminando por suas retiradas ‘In Order’ nas Completion Queues, apoiando-se no z14 Technical Guide e no z14 Journal of Research and Development. Como sempre ocorre no CMG, convidamos a Otimizar Código.
Esta palestra procurará mostrar alguns dos “detalhes internos” dos cores da z14: O Fetch, Parsing, Decode e Issue ‘Out of Order’ das instruções às suas várias Execution Units, terminando por suas retiradas ‘In Order’ nas Completion Queues, apoiando-se no z14 Technical Guide e no z14 Journal of Research and Development. Como sempre ocorre no CMG, convidamos a Otimizar Código.
[7/9] Sistemas embarcados de alto desempenho para tratamento e processamento ...Marcelo Barros de Almeida
Sistemas embarcados começam a ser muito explorados em aplicações biomédicas e tendem a se expandir cada vez mais. Podemos citar, por exemplo, sistemas de controle de próteses de membros artificiais, controles de cadeiras de rodas inteligentes, tecnologias assistivas baseadas em exoesqueletos etc. Assim, o uso de dispositivos embarcados para coleta, tratamento e processamento de sinais em tempo real tem recebido cada vez mais atenção de empresas e laboratórios de pesquisa em todo mundo. Neste workshop focaremos nossa atenção nos dispositivos fabricados pela empresa ARM Holdings plc, em especial na linha de controladores Cortex M4 e M7. Além dos dispositivos, a ARM também disponibiliza um grande conjunto de funções para processamento de sinais, especificamente desenvolvida para uso otimizado do processador Cortex. Funções matemáticas básicas, transformadas, filtros digitais, funções estatísticas e de interpolação são parte desse conjunto conhecido como CMSIS-DSP (Cortex Microcontroller Software Interface Standard - Digital Signal Processing). Nesse workshop, será apresentado o CMSIS-DSP através de exemplos aplicados ao processamento de sinais biomédicos, evidenciado a sua forma de uso e vantagens. Os participantes deverão implementar pequenos sistemas de processamento em tempo real em kits contendo os controladores Cortex M.
Esse vídeo explora o processo de criação de hardware com processadores STM32, em especial um processador mais simples da linha F0. Todos os elementos de hardware são discutidos e algumas características de layout.
Escola Técnica Estadual Aderico Alves de Vasconcelos
Curso: Técnico de Redes de Computadores
Disciplina: Segurança de Dados e Informações
Professor: Fagner Lima
[3/9] Sistemas embarcados de alto desempenho para tratamento e processamento ...Marcelo Barros de Almeida
Sistemas embarcados começam a ser muito explorados em aplicações biomédicas e tendem a se expandir cada vez mais. Podemos citar, por exemplo, sistemas de controle de próteses de membros artificiais, controles de cadeiras de rodas inteligentes, tecnologias assistivas baseadas em exoesqueletos etc. Assim, o uso de dispositivos embarcados para coleta, tratamento e processamento de sinais em tempo real tem recebido cada vez mais atenção de empresas e laboratórios de pesquisa em todo mundo. Neste workshop focaremos nossa atenção nos dispositivos fabricados pela empresa ARM Holdings plc, em especial na linha de controladores Cortex M4 e M7. Além dos dispositivos, a ARM também disponibiliza um grande conjunto de funções para processamento de sinais, especificamente desenvolvida para uso otimizado do processador Cortex. Funções matemáticas básicas, transformadas, filtros digitais, funções estatísticas e de interpolação são parte desse conjunto conhecido como CMSIS-DSP (Cortex Microcontroller Software Interface Standard - Digital Signal Processing). Nesse workshop, será apresentado o CMSIS-DSP através de exemplos aplicados ao processamento de sinais biomédicos, evidenciado a sua forma de uso e vantagens. Os participantes deverão implementar pequenos sistemas de processamento em tempo real em kits contendo os controladores Cortex M.
Nos novos mainframes IBM z, a tecnologia do chip de CPU ficou mais complexa, especialmente incorporando camadas de memória cache. Uma nova terminologia foi introduzida -Relative Nest Intensity (RNI), indicando o nível de atividade para a hierarquia de memória. A área mais sensível ao desempenho da hierarquia de memória é a distribuição de atividade dos caches compartilhados e a memória: quanto maior o RNI, mais profunda será a hierarquia de memória que o processador deve percorrer para recuperar as instruções e os dados de um workload. Discutiremos como podemos diminuir a influência do RNI no CICS fazendo ajustes de desempenho.
[7/9] Sistemas embarcados de alto desempenho para tratamento e processamento ...Marcelo Barros de Almeida
Sistemas embarcados começam a ser muito explorados em aplicações biomédicas e tendem a se expandir cada vez mais. Podemos citar, por exemplo, sistemas de controle de próteses de membros artificiais, controles de cadeiras de rodas inteligentes, tecnologias assistivas baseadas em exoesqueletos etc. Assim, o uso de dispositivos embarcados para coleta, tratamento e processamento de sinais em tempo real tem recebido cada vez mais atenção de empresas e laboratórios de pesquisa em todo mundo. Neste workshop focaremos nossa atenção nos dispositivos fabricados pela empresa ARM Holdings plc, em especial na linha de controladores Cortex M4 e M7. Além dos dispositivos, a ARM também disponibiliza um grande conjunto de funções para processamento de sinais, especificamente desenvolvida para uso otimizado do processador Cortex. Funções matemáticas básicas, transformadas, filtros digitais, funções estatísticas e de interpolação são parte desse conjunto conhecido como CMSIS-DSP (Cortex Microcontroller Software Interface Standard - Digital Signal Processing). Nesse workshop, será apresentado o CMSIS-DSP através de exemplos aplicados ao processamento de sinais biomédicos, evidenciado a sua forma de uso e vantagens. Os participantes deverão implementar pequenos sistemas de processamento em tempo real em kits contendo os controladores Cortex M.
Esse vídeo explora o processo de criação de hardware com processadores STM32, em especial um processador mais simples da linha F0. Todos os elementos de hardware são discutidos e algumas características de layout.
Escola Técnica Estadual Aderico Alves de Vasconcelos
Curso: Técnico de Redes de Computadores
Disciplina: Segurança de Dados e Informações
Professor: Fagner Lima
[3/9] Sistemas embarcados de alto desempenho para tratamento e processamento ...Marcelo Barros de Almeida
Sistemas embarcados começam a ser muito explorados em aplicações biomédicas e tendem a se expandir cada vez mais. Podemos citar, por exemplo, sistemas de controle de próteses de membros artificiais, controles de cadeiras de rodas inteligentes, tecnologias assistivas baseadas em exoesqueletos etc. Assim, o uso de dispositivos embarcados para coleta, tratamento e processamento de sinais em tempo real tem recebido cada vez mais atenção de empresas e laboratórios de pesquisa em todo mundo. Neste workshop focaremos nossa atenção nos dispositivos fabricados pela empresa ARM Holdings plc, em especial na linha de controladores Cortex M4 e M7. Além dos dispositivos, a ARM também disponibiliza um grande conjunto de funções para processamento de sinais, especificamente desenvolvida para uso otimizado do processador Cortex. Funções matemáticas básicas, transformadas, filtros digitais, funções estatísticas e de interpolação são parte desse conjunto conhecido como CMSIS-DSP (Cortex Microcontroller Software Interface Standard - Digital Signal Processing). Nesse workshop, será apresentado o CMSIS-DSP através de exemplos aplicados ao processamento de sinais biomédicos, evidenciado a sua forma de uso e vantagens. Os participantes deverão implementar pequenos sistemas de processamento em tempo real em kits contendo os controladores Cortex M.
Nos novos mainframes IBM z, a tecnologia do chip de CPU ficou mais complexa, especialmente incorporando camadas de memória cache. Uma nova terminologia foi introduzida -Relative Nest Intensity (RNI), indicando o nível de atividade para a hierarquia de memória. A área mais sensível ao desempenho da hierarquia de memória é a distribuição de atividade dos caches compartilhados e a memória: quanto maior o RNI, mais profunda será a hierarquia de memória que o processador deve percorrer para recuperar as instruções e os dados de um workload. Discutiremos como podemos diminuir a influência do RNI no CICS fazendo ajustes de desempenho.
Controle de protótipo movimentado por liga de memória de forma (sma) pelo pc,...fesaab
Meu projeto de iniciação científica.
O artigo ilustra o desenvolvimento de uma solução simples, barata e segura em hardware que permite a transmissão de dados extraídos da porta paralela de um computador tipo PC com a finalidade de controlar dispositivos à distância.
1. UNIVERSIDADE FEDERAL DO RIO GRANDE DO SULUNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL
C55XC55XTMTM
DSP GenerationDSP Generation
TMS320VC5509ATMS320VC5509A
CMP114 – Seminário sobre Processadores
Júlio César Silvello (silvello@inf.ufrgs.br)
Professor: Flávio Rech Wagner
Julho/2004
2. TMS320VC5509A – Texas Instruments C55X DSPTMS320VC5509A – Texas Instruments C55X DSP
1. Introdução/Aplicações para processadores DSP
2. TMS320VC5509A
A. Packages GHH e PGE
B. Características
C. Organização
3. Core C55XTM
DSP
A. Organização
B. Unidades Funcionais
C. Pipeline
D. Registradores
E. Modos de Endereçamento
F. Paralelismo
RoteiroRoteiro
3. Aplicações para Processadores DSP (Digital Signal Processing)
Áudio, Vídeo, DigitalTV (Multimídia)
Aviação
Biométrica
Comunicação de Dados
Processador provê um conjunto de funções úteis para
processamento digital de sinais implementadas em hardware que
teriam uma implementação em software custosa
1. Introdução1. Introdução
TMS320VC5509A – Texas Instruments C55X DSPTMS320VC5509A – Texas Instruments C55X DSP
5. Geração C55X DSP
Objetivo é alto desempenho através de paralelismo, sempre com
enfoque principal no baixo consumo de potência
Gerenciamento de potência
monitora continuamento quais partes do chip estão em uso, desligando a
alimentação das que não estão sendo necessárias
permite que o usuário configure o gerenciamento de potência para aplicações
específicas
6 componentes podem ser gerenciados:
• CPU, Cache, Periféricos, DMA, Clock Generator, External Memory Interface
(EMIF)
B. Características
TMS320VC5509A – Texas Instruments C55X DSPTMS320VC5509A – Texas Instruments C55X DSP
6. 2 MACs (Multiply-accumulate), 17x17 bits
1 ALU central de 40 bits, 1 ALU adicional de 16 bits
4 acumuladores de 40 bits
3 barramentos de 16 bits para leitura de dados
2 barramentos de 16 bits para escrita de dados
1 barramento de 32 bits para instruções
6 barramentos de 24 bits para endereços
78 registradores mapeados em memória (MMR)
TMS320VC5509A – Texas Instruments C55X DSPTMS320VC5509A – Texas Instruments C55X DSP
B. Características
7. Instruções de comprimento variável (8, 16, 24, 32, 40 ou 48 bits)
Busca de instruções é feita de 32 em 32 bits sempre
Há uma Unidade de Instruções (IU) dotada de um buffer,
responsável pela busca e desempacotamento das instruções
Unidade de Programa (PU) decodifica instrução e direciona tarefas
para a Unidade de Endereçamento (AU) e Unidade de Dados (DU),
e gerencia o pipeline
Predição de desvio evita o esvaziamento do pipeline
TMS320VC5509A – Texas Instruments C55X DSPTMS320VC5509A – Texas Instruments C55X DSP
B. Características
8. RAM on-chip (256KB)
DARAM (Dual Access RAM)
• 8 blocos de 8KB
• até 2 acessos simultâneos por ciclo em 1 bloco
SARAM (Single Access RAM)
• 24 blocos de 8KB
• Apenas 1 acesso por ciclo
ROM on-chip (64KB)
one-wait-state
1 bloco de 32KB e 2 blocos de 16KB
primeiro acesso a uma palavra (de 16 bits) requer 3 ciclos e os acessos
subsequentes requerem 2 ciclos por palavra
TMS320VC5509A – Texas Instruments C55X DSPTMS320VC5509A – Texas Instruments C55X DSP
B. Características
9. Periféricos on-chip:
2 timers de 20 bits
1 watchdog timer
6 canais DMA
3 portas seriais
8 GPIO (pinos de E/S de propósitos gerais) – difere de um package para
outro
USB
Real Time Clock
TMS320VC5509A – Texas Instruments C55X DSPTMS320VC5509A – Texas Instruments C55X DSP
B. Características
11. 4 unidades funcionais
Instruction Buffer Unit (I Unit)
Program Flow Unit (P Unit)
Address-Data Flow Unit (A Unit)
Data Computation Unit (D Unit)
3. Core CPU C55X3. Core CPU C55XTMTM
DSPDSP
TMS320VC5509A – Texas Instruments C55X DSPTMS320VC5509A – Texas Instruments C55X DSP
A. Organização
12. 3. Core CPU C55X3. Core CPU C55XTMTM
DSPDSP
TMS320VC5509A – Texas Instruments C55X DSPTMS320VC5509A – Texas Instruments C55X DSP
13. 3. Core CPU C55X3. Core CPU C55XTMTM
DSPDSP
TMS320VC5509A – Texas Instruments C55X DSPTMS320VC5509A – Texas Instruments C55X DSP
B. Unidades Funcionais
14. 3. Core CPU C55X3. Core CPU C55XTMTM
DSPDSP
TMS320VC5509A – Texas Instruments C55X DSPTMS320VC5509A – Texas Instruments C55X DSP
Instruction Buffer Unit (I Unit)
Recebe 4 bytes de código de
programa a cada ciclo e armazena no
buffer
Decodifica de 1 até 6 bytes de código
previamente recebido (no mesmo
ciclo)
Direciona os dados para as unidades
apropriadas
O buffer é esvaziado quando ocorre
um desvio para uma nova localização
15. 3. Core CPU C55X3. Core CPU C55XTMTM
DSPDSP
TMS320VC5509A – Texas Instruments C55X DSPTMS320VC5509A – Texas Instruments C55X DSP
Program Flow Unit (P Unit)
Gera todos endereços do
espaço de programa
Controla a seqüência de
instruções (laços, desvios e
execução condicional)
16. 3. Core CPU C55X3. Core CPU C55XTMTM
DSPDSP
TMS320VC5509A – Texas Instruments C55X DSPTMS320VC5509A – Texas Instruments C55X DSP
Address-Data Flow Unit
(A Unit)
Contém toda a lógica e
registradores para gerar
endereços dos espaço de
dados
ALU 16 bits
• Funções aritméticas,
lógicas, Shift e operações
de saturação
17. 3. Core CPU C55X3. Core CPU C55XTMTM
DSPDSP
TMS320VC5509A – Texas Instruments C55X DSPTMS320VC5509A – Texas Instruments C55X DSP
Data Computation Unit
(D Unit)
Shifter de 40 bits
ALU de 40 bits
• Funções aritméticas
• Lógicas
• Arredondamento
• Operações de saturação
2 MACs
• Multiplicação de 17 bits
• Adição/subtração de 40
bits (no mesmo ciclo)
18. 3. Core CPU C55X3. Core CPU C55XTMTM
DSPDSP
TMS320VC5509A – Texas Instruments C55X DSPTMS320VC5509A – Texas Instruments C55X DSP
2 segmentos desacoplados
Fetch Pipeline
• Busca pacotes de 32 bits e coloca-os na IBQ (Instruction Buffer Queue)
• Alimenta o segundo pipeline com pacotes de instrução de 48 bits
Execution Pipeline
• Decodificação de instruções
• Acesso a dados
• Computação
Proteção contra conflitos através de inserção de bolhas
Predição de desvio
C. Pipeline
19. 3. Core CPU C55X3. Core CPU C55XTMTM
DSPDSP
TMS320VC5509A – Texas Instruments C55X DSPTMS320VC5509A – Texas Instruments C55X DSP
Fetch Pipeline
PF1: apresenta o endereço à memória
PF2: espera pela resposta da memória
F: busca um pacote de instruções e armazena na IBQ
PD: pré-decodificação (identificação de início e término da instrução,
identificação de instruções paralelas)
20. 3. Core CPU C55X3. Core CPU C55XTMTM
DSPDSP
TMS320VC5509A – Texas Instruments C55X DSPTMS320VC5509A – Texas Instruments C55X DSP
Execution Pipeline
D: decodifica e despacha instrução simples ou par de instruções
AD: lê ou modifica registradores envolvidos na geração de endereços
AC1: para operações de leitura em memória, envia o endereço para o barramento
AC2: espera 1 ciclo para memória ler a requisição
R: lê dado da memória e MMR
X: lê ou modifica registradores que não são MMR
W: escreve dado em MMR ou no espaço de IO (periféricos)
W+: escreve dado em memória
21. 3. Core CPU C55X3. Core CPU C55XTMTM
DSPDSP
TMS320VC5509A – Texas Instruments C55X DSPTMS320VC5509A – Texas Instruments C55X DSP
78 MMR
4 acumuladores de 40 bits (D Unit)
2 registradores de transição de 16 bits, usados em instruções compare-and-
select-extremum
4 registradores temporários de uso geral, de 16 bits
Registradores para endereçamento do espaço de dados e espaço de E/S
Registradores de fluxo de programa (PC, RETA, CFCT)
Registradores para gerenciamento de interrupção
Registradores para controle de repetição em laços
Registradores de status
D. Registradores
22. 3. Core CPU C55X3. Core CPU C55XTMTM
DSPDSP
TMS320VC5509A – Texas Instruments C55X DSPTMS320VC5509A – Texas Instruments C55X DSP
3 modos de endereçamento
Absoluto (endereço na instrução)
Direto (deslocamento)
Indireto (ponteiro)
• Caso particular: endereçamento circular
Espaço de Programa
Espaço de Dados
Espaço de E/S
E. Modos de Endereçamento
23. 3. Core CPU C55X3. Core CPU C55XTMTM
DSPDSP
TMS320VC5509A – Texas Instruments C55X DSPTMS320VC5509A – Texas Instruments C55X DSP
Implícito em uma instrução
Explícito entre duas instruções (definido pelo usuário)
Máximo de 6 bytes
Sem conflitos de recurso
Ambos: 1 instrução com paralelismo implícito associada a outra
F. Paralelismo
24. Texas Instruments (February 2004). TMS320C55X DSP CPU Reference Guide. Literature Number: SPRU371F.
Available at http://www-s.ti.com/sc/techlit/spru371f
Texas Instruments (November 2002 - Revised December 2003). TMS320VC5509A Fixed-Point Digital Signal
Processor - Data Manual. Literature Number: SPRS205B. Available at http://www-s.ti.com/sc/techlit/sprs205b
Texas Instruments (October 2002). TMS320C55X DSP Mnemonic Instruction Set Reference Guide. Literature
Number: SPRU374G. Available at http://www-s.ti.com/sc/techlit/spru374g
Bibliografia ConsultadaBibliografia Consultada
TMS320VC5509A – Texas Instruments C55X DSPTMS320VC5509A – Texas Instruments C55X DSP