• Nenhum resultado encontrado

Sistema de Comunicação para o Sistema PET Mamografia

N/A
N/A
Protected

Academic year: 2021

Share "Sistema de Comunicação para o Sistema PET Mamografia"

Copied!
123
0
0

Texto

(1)

Sistema de Comunicação para o Sistema PET Mamografia

Baseado nos Protocolos PCI e USB

Vasco Miguel Bexiga António

Dissertação para obtenção do Grau de Mestre em

Engenharia Electrotécnica e de Computadores

Júri

Presidente: Prof. José Beltrán Gerald

Orientador: Profª. Isabel Maria Silva Parreira Cacho Teixeira Co-orientador: Prof. João Paulo Cacho Teixeira

Vogais: Prof. Marcelino Santos

Setembro de 2008

2

(2)
(3)

NOTA

Neste documento, utilizam-se em determinadas circunstâncias os termos anglo-saxónicos embora se proponha uma tradução para o Português. Esta decisão fundamenta-se no facto de que há termos para os quais não há em Português, tanto quanto é do conhecimento do autor, uma designação consensual e cujas designações anglo-saxónicas são amplamente conhecidas e cuja semântica é incontroversa no âmbito da Engenharia Electrotécnica e de Computadores. Os termos em inglês são apresentados, na dissertação, em itálico.

Por outro lado, tendo este trabalho sido desenvolvido no âmbito de um projecto em que a documentação e todas as publicações em conferências e revistas internacionais são obrigatoriamente escritas em Inglês, utilizam-se na dissertação as siglas em inglês que referem os diferentes módulos constituintes do sistema. Evita-se desta forma ambiguidades de notação se se pesquisar alguma das referências bibliográficas incluídas neste documento.

Alguns dos diagramas detalhados das arquitecturas dos vários módulos que foram desenvolvidos são de dimensões relativamente grandes. Para permitir a leitura desses diagramas optou-se por incluí-los em anexo (por vezes em formato A3), incluindo no texto da Dissertação os diagramas de blocos das referidas arquitecturas.

(4)
(5)

Agradecimentos

Gostaria de expressar o meu profundo agradecimento à Professora Isabel Cacho Teixeira, pelo seu precioso auxílio e encorajamento ao longo de todo o trabalho realizado e principalmente pela enorme paciência demonstrada na revisão desse documento.

Queria também agradecer o apoio prestado pelo Professor João Paulo Teixeira durante a realização deste projecto.

Gostaria de agradecer ao Professor João Varela pela oportunidade de participar num projecto desta dimensão.

Queria agradecer ao meu colega e amigo Pedro Machado pela sua cooperação neste projecto e pelo espírito de equipa demonstrado.

Queria agradecer aos meus amigos e aos meus colegas do INESC-ID (Carlos Leong) e INOV (Joel Rego, Fernando Piedade, Pedro Neves e Pedro Lousã) por todo o apoio, amizade e compreensão.

Gostaria de deixar uma palavra de apreço a todos os colegas que pertencem ao consórcio em que se insere este projecto.

Gostaria de agradecer à minha família que nunca deixou de acreditar em mim e de me apoiar ao longo de todos os meus projectos pessoais e profissionais.

(6)
(7)

Resumo

O trabalho que se apresenta nesta Dissertação foi desenvolvido no âmbito do Projecto PET. Este projecto tem como objectivo desenvolver um sistema de detecção de cancro da mama, baseado em tecnologia PET (Positron Emission Tomography), que permita detectar lesões de dimensões tão reduzidas quanto 2 mm. Esta resolução é bastante superior à conseguida através de sistemas PET de corpo inteiro e também superiores à conseguida através de métodos tradicionais baseados no Raio-X.

Um sistema deste tipo envolve a geração de uma grande quantidade de dados. Por tal, o sistema deve ser de elevado desempenho. Adicionalmente, deve ser tão robusto e tão preciso quanto possível.

Os dados gerados no exame são detectados por um scanner e processados por um sistema electrónico. Estes dados são posteriormente enviados para um computador para reconstituição de imagem.

O sistema que constitui o principal objecto deste trabalho é o desenvolvimento do sistema de comunicação entre o sistema electrónico e o computador.

Neste trabalho são apresentadas duas soluções para este sistema de comunicação, baseados em dois protocolos de comunicação, nomeadamente, os protocolos PCI e o protocolo USB.

A primeira solução é baseada na utilização de um circuito integrado dedicado e implementa um conjunto de funções do protocolo PCI.

A segunda solução baseia-se na utilização do protocolo USB em conjunto com um protocolo proprietário do CERN.

Na dissertação apresentam-se os estudos realizados, o projecto, a implementação e a sua validação por simulação e por testes laboratoriais realizados no enquadramento do sistema completo.

Palavras-chave

Sistema PEM, Transmissão de Dados, Fiabilidade, Desempenho, PCI, USB.

(8)
(9)

Abstract

The work presented in this Dissertation has been developed in the context of the project PET. This project aims at the development of a PET (Positron Emission Tomography) based system for detection of breast cancer that allows the identification of lesions with dimensions as small as 2 mm. This resolution is far superior to the resolution of whole body PET systems, and is also superior to the one obtained with traditional X-Ray based methods.

Such a system involves the generation of a huge amount of data. Therefore, a high performance system is required. Additionally, it should be as robust and as accurate as possible.

Data generated in the exam is detected by a scanner and processed by an electronic system. These data are afterwards sent to a computer for image reconstruction.

The system that constitutes the object of this work is the development of a system that establishes the communication between the electronics system and the computer.

Two solutions, based on two distinct communication protocols, in particular, the PCI protocol and the USB protocol are presented for this communication system.

The first solution is based on the use of a dedicated electronic device and implements a set of the PCI functions.

The second solution is based on the use of the USB protocol together with a proprietary protocol developed by CERN.

This dissertation presents the studies, design, implementation, validation by simulation and laboratorial tests conducted in the framework of the complete system.

Keywords

(10)
(11)

Índice

NOTA ... I Agradecimentos ... III Resumo ... V Abstract... VII Índice ... IX

Lista de Figuras ... xiii

Lista de Tabelas ... xv

Lista de Acrónimos ... 17

1. Introdução ... 1

1.1. Contexto e Motivação ... 1

1.2. Enquadramento do Sistema de Comunicação ... 2

1.3. Objectivos do Trabalho ... 3

1.4. Contribuições Relevantes ... 4

1.5. Organização da Dissertação ... 5

2. Sistema PEM ... 7

2.1. Princípio de Funcionamento do Sistema PEM ... 7

2.2. Arquitectura do Sistema PEM ... 9

2.3. Organização dos Planos de Cristais ... 10

2.4. Electrónica de Front-End ... 11

2.4.1 Caracterização dos Sinais ... 11

2.4.2 Tipos de Eventos... 13

3. Electrónica de Aquisição de Dados ... 15

3.1. Requisitos do sistema DAE ... 15

3.2. Cenários de Funcionamento do DAE ... 15

3.3. Arquitectura do sistema DAE ... 16

3.4. Subsistema de Qualificação e Filtragem de Dados ... 17

3.4.1 Módulo de Aquisição de Dados ... 18

3.4.2 Módulo de Filtragem ... 19

3.4.3 Módulo Trigger ... 19

(12)

3.5.1 Unidade de Memória ... 20

3.5.2 Concentrator de Dados ... 20

4. Interface de Comunicação DAE  PC ... 21

4.1. Requisitos da Interface de Comunicação ... 22

4.1.1 Requisitos de Desempenho ... 22

4.1.2 Requisitos Funcionais ... 22

4.1.2.1 Formato dos Comandos ... 23

4.1.2.2 Dados de Calibração do Sistema ... 25

4.1.2.3 Dados Relevantes (amostras associadas a fotoeventos) ... 25

4.2. Protocolos de Comunicação ... 26

5. Solução PCI ... 29

5.1. Ponte PCI-to-PCI ... 30

5.2. Dispositivo QL5064 ... 31

5.2.1 Arquitectura do Dispositivo QL5064 ... 32

5.3. Arquitectura da Interface PCI / TGR ... 33

5.4. Arquitectura da FPGA do QL5064 ... 36

5.4.1 Controlador Blast Mode ... 37

5.4.2 FIFO Blast Mode ... 39

5.4.3 Controlador das FIFOs ... 41

5.4.4 Protocolo de Comunicação ... 42

5.4.5 Registos de Configuração ... 43

5.5. Simulação da Interface de Comunicação ... 45

5.5.1 Ambiente de Simulação ... 45

5.5.2 Validação Funcional e de Desempenho ... 46

5.5.3 Resultados de Simulação ... 46

5.6. Implementação Física e Teste ... 47

5.6.1 Testes de Laboratório ... 47

5.6.2 Emulação de um Barramento PCI Secundário ... 49

5.6.2.1 Árbitro ... 50

5.6.2.2 Gestão RST/REQ64 ... 50

(13)

5.6.3.1 Módulo de Entrada ... 53

5.6.3.2 FIFO de Resposta a Comandos ... 54

5.6.3.3 Módulo de simulação de exame ... 54

5.6.3.4 FIFO de simulação de exame... 55

5.6.3.5 Módulo de Saída ... 56

5.7. Resultados da Solução PCI ... 58

5.8. Solução USB/S-LINK ... 59

6. Interface USB ... 61

6.1. Cenários de Comunicação USB ... 61

6.2. Arquitectura do Módulo de Comunicação... 61

6.3. Microcontrolador Cypress FX2LP ... 62

6.4. Comunicação FX2LP-TGR/DCC ... 64

6.4.1 Operação de Leitura ... 65

6.4.1 Operação de Escrita ... 66

6.5. Módulo de Comunicação ... 67

6.6. Módulo de Comunicação via USB ... 68

6.6.1 Memórias FIFOs do Módulo de Comunicação via USB ... 69

6.6.2 Controlador do Módulo de Comunicação via USB ... 70

6.7. Alterações ao DCC ROC ... 72

6.8. Implementação Física do Módulo de Comunicação ... 72

6.9. Simulação e Teste ... 72

6.9.1 Simulação do Modulo de Comunicação via USB ... 72

6.9.2 Teste Laboratorial do Módulo de Comunicação via USB ... 73

6.9.3 Simulação do Sistema DAE com o Módulo de Comunicação via USB ... 73

6.9.4 Teste Laboratorial do Sistema DAE com o Módulo de Comunicação via USB ... 74

Resultados do Teste Laboratorial ... 75

7. Conclusões e Trabalho Futuro ... 77

(14)
(15)

Lista de Figuras

Figura 1-1 - Mamografia obtida: com Raios-X (a) e com PET (b) ... 1

Figura 1-2 - Arquitectura de Topo do sistema PEM ... 3

Figura 2-1 – Conceito PEM (a) e fotografia do robot (b) ... 7

Figura 2-2 – Princípio de funcionamento dos detectores ... 8

Figura 2-3 – Detecção da posição do tumor pela intersecção de várias trajectórias ... 8

Figura 2-4 - Arquitectura do sistema PEM ... 9

Figura 2-5 – Módulo de 32 cristais ... 10

Figura 2-6 – Cristal associado a dois APD’s ... 10

Figura 2-7 – Matriz de 32 células fotossensíveis ... 10

Figura 2-8 – Formato do sinal produzido pelo ASIC ... 11

Figura 2-9 – Efeito de Compton ... 12

Figura 3-1 – Arquitectura de alto-nível do sistema DAE ... 16

Figura 3-2 – Subsistemas e blocos constituintes do sistema DAE ... 17

Figura 3-3 – Exemplo de um sinal de entrada e uso do parâmetro Delta ... 19

Figura 4-1 – Arquitectura detalhada do Sistema DAE ... 21

Figura 4-2 – Arquitectura da Interface entre DCC e PC ... 21

Figura 5-1 – Arquitectura da solução PCI implementada na TGR/DCC ... 29

Figura 5-2 – Arquitectura da solução PCI ... 30

Figura 5-3 – Placa PCI-SB (a) Placa PMC-SB (b) ... 30

Figura 5-4 – Diagrama de blocos do QL5064 ... 32

Figura 5-5 – Sinais das interfaces entre o core PCI e a FPGA e PCI ... 34

Figura 5-6 – Sinais das interfaces entre a FPGA do QL5064 e o módulo TGR/DCC ... 35

Figura 5-7 – Arquitectura da FPGA do QL5064 ... 36

Figura 5-8 – Controlador Blast Mode ... 37

Figura 5-9 – Máquina de estados do controlador Blast Mode ... 39

Figura 5-10 – FIFO Blast mode ... 40

Figura 5-11 – Controlador das FIFOs. ... 41

Figura 5-12 – Protocolo de comunicação TGR/DCC – QL5064 ... 42

Figura 5-13 – Ambiente de simulação ... 45

Figura 5-14 – Placa TGR com o QL5064 (a) e com a PMC-SB (b). ... 47

Figura 5-15 – Bancada de teste ... 47

Figura 5-16 – Medição dos sinais da FIFO Single Mode ... 48

Figura 5-17 – Medição dos sinais da FIFO Blast Mode ... 48

Figura 5-18 - Diagrama temporal do uso dos sinais RST# e REQ64# na inicialização. ... 51

Figura 5-19 – Esquema do módulo REQ64# ... 51

Figura 5-20 – Arquitectura do emulador da TGR/DCC. ... 52

Figura 5-21 – Módulo de entrada ... 53

(16)

Figura 5-23 – Módulo de simulação de exame ... 55

Figura 5-24 – FIFO de simulação de exame ... 56

Figura 5-25 – Módulo de saída. ... 57

Figura 5-26 – Detecção do sistema pelo Sistema Operativo ... 58

Figura 5-27 – Diagrama de blocos da solução USB & S-LINK ... 60

Figura 6-1 – Arquitectura TGR/DCC com o módulo de comunicação ... 62

Figura 6-2 – Diagrama de blocos do microcontrolador Cypress FX2LP ... 63

Figura 6-3 – Diagrama de blocos da interface de comunicação com o Cypress FX2LP. ... 63

Figura 6-4 - Interface das FIFOs do FX2LP ... 64

Figura 6-5 – Interface de leitura entre a FPGA TGR/DCC e o FX2LP ... 65

Figura 6-6 – Diagrama temporal da operação de leitura na FIFO do FX2LP ... 65

Figura 6-7 - Interface de escrita entre a FPGA TGR/DCC e o FX2LP ... 66

Figura 6-8 - Diagrama temporal da operação de escrita na FIFO do FX2LP ... 67

Figura 6-9 – Diagrama de blocos do módulo de comunicação na FPGA TGR/DCC. ... 67

Figura 6-10 – Interface do módulo USB ... 69

Figura 6-11 – Memórias FIFO – (a) dados para o PC; (b) dados do PC ... 69

Figura 6-12 – Sinais usados no controlador USB ... 70

(17)

Lista de Tabelas

Tabela 4-1 – Protocolos de comunicação mais usuais em PCs comerciais ... 27

Tabela 5-1 – Configuração dos DIP Switch das placas Starfabric ... 31

Tabela 5-2 – Modos de funcionamento dos blocos de memória RAM ... 33

Tabela 5-3 - Descrição dos sinais do controlador Blast mode ... 38

Tabela 5-4 – Descrição dos sinais da FIFO Blast Mode ... 40

Tabela 5-5 – Descrição dos sinais do controlador das FIFOs. ... 42

Tabela 5-6 – Registos de configuração do QL5064. ... 45

Tabela 5-7 – Medições dos sinais das FIFOs ... 49

Tabela 5-8 – Requisitos de tempo dos sinais RST# e REQ64# ... 51

Tabela 5-9 – Sinais do módulo de entrada da TGR/DCC ... 53

Tabela 5-10 – Sinais da FIFO de resposta a comandos ... 54

Tabela 5-11 – Sinais do módulo de exame ... 55

Tabela 5-12 – Sinais da FIFO de simulação de exame. ... 56

Tabela 5-13 – Sinais do módulo de saída da TGR/DCC ... 57

Tabela 6-1 – Parâmetros da operação de leitura da FIFO do FX2LP ... 66

Tabela 6-2 - Parâmetros da operação de escrita da FIFO do FX2LP ... 67

Tabela 6-3 – Sinais da interface do DCC ROC com o módulo USB. ... 68

Tabela 6-4 – Sinais usados pelas FIFOs do módulo USB ... 70

(18)
(19)

Lista de Acrónimos

ADI – Agência de Inovação APD – Avalanche Photo Diodes

ASIC – Application Specific Integrated Circuit BAR - Base Address Regions

BIST – Built-In Self-Test

DAE – Data Acquisition Electronics DAQ – Data Acquisition Module DBUS - Dedicated Bus

DCC – Data Concentrator

DIP Switches - Dual-in Line Package Switches DMA – Direct Memory Access

FE – Front-End electronics FE-EMU - Front End Emulator FIFO –First In First Out FLT – Filter Module

FPGA – Field Programmable Gate Array GBUS - Generic Bus

IBEB – Instituto de Biofísica e Engenharia Biomédica

IBILI – Instituto Biomédico de Investigação em Luz e Imagem INEGI – Instituto de Engenharia e Gestão Industrial

INESC – Instituto de Engenharia de Sistemas e Computadores INESC-ID – INESC Investigação e Desenvolvimento

INOV – INESC Inovação

IPO - Instituto Português de Oncologia IST - Instituto Superior Técnico

LIP – Laboratório de Instrumentação e Física Experimental de Partículas PC – Personal Computer

PCI – Peripheral Component Interconnect PEM – Position Emission Mammography PET – Position Emission Tomography RIC - Read-In Controller

ROC – Read Out Controller S-LINK - Simple Link Interface SIE – Serial Interface Engine TGR – Trigger Module USB - Universal Serial Bus

(20)
(21)

1. Introdução

1.1. Contexto e Motivação

A investigação científica no meio médico tem evoluído significativamente nos últimos anos, praticamente em todos os domínios de intervenção médica. Um dos aspectos que tem sido particularmente considerado tem a ver com a procura de soluções e meios de diagnóstico para a detecção de doenças de índices de mortalidade elevados. Uma das causas porque se procuram tão afincadamente meios de diagnósticos precisos, que permitam identificar as várias doenças nos seus estágios iniciais de desenvolvimento é que a cura de tais doenças depende da sua detecção precoce. Está neste caso o cancro da mama, que é, no mundo desenvolvido, uma das primeiras causas de morte entre as mulheres [1] [2] [3]. A cura desta doença, ou pelo menos a redução dos seus efeitos, é tanto mais provável quanto mais cedo for realizado o seu diagnóstico.

De facto, o número de mortes provocadas por este tipo de lesão têm vindo a descer ao longo dos anos, em grande parte devido à combinação da existência de tratamentos mais efectivos e meios de diagnóstico mais eficazes, nomeadamente no que se refere à capacidade de detecção do tumor nos seus estágios iniciais.

Actualmente, o método mais usado na detecção do cancro da mama é a mamografia [3], baseada na utilização de Raios X. Essa técnica não fornece, contudo, a precisão necessária para uma detecção do tumor quando as suas dimensões são muito reduzidas, permitindo detectar tumores com dimensões mínimas da ordem dos 10 mm [3]. Assim embora permita a detecção de cerca de 80% dos casos, o diagnóstico é sempre confirmado com a realização de uma biopsia a fim de eliminar falsos casos.

Uma técnica alternativa de exame é o recurso a sistemas PET (Positron Emission Tomography). Esta última tecnologia permite obter imagens de resolução consideravelmente maior. Na Figura 1-1, ilustram-se imagens obtidas com sistemas de Raios X e PET. Como pode observar-se, a diferença de nitidez entre as duas imagens é significativa.

(a) (b)

(22)

A utilização de sistemas PET de corpo inteiro para mamografia, apesar de conduzir a resultados melhores que os obtidos com Raios X, não têm ainda a resolução necessária para uma detecção de tumores de dimensão significativamente inferiores. Porém, estudos teóricos indicam que aproximando os sistemas de detecção de radiação (scanners) do órgão sob observação é possível aumentar a resolução do diagnóstico [5] [6] [7], isto é, detectar células cancerosas de dimensões da ordem de poucos mm.

Este conhecimento criou a motivação necessária para se tentar desenvolver um sistema em tecnologia PET dedicado à detecção de cancro da mama1. Para este efeito, foi criado o consórcio PEM2

[8]

, com o objectivo de desenvolver o sistema PEM (Positron Emission Mammography) [9] [10] [11] [12] [13] [14] [15] para a detecção de cancro da mama. A resolução de diagnóstico esperada com este sistema é da ordem de 1 a 2 mm.

Para a realização de tal sistema, o consórcio PET tem submetido vários projectos à ADI (Agência de Inovação). Foi no âmbito destes projectos que se iniciaram de forma concertada todos os trabalhos para o desenvolvimento do sistema PEM.

O trabalho que é objecto desta dissertação insere-se no sistema de comunicação de dados entre a componente electrónica de aquisição e processamento de sinais e um computador externo responsável pela reconstituição de imagem, dois subsistemas fundamentais do sistema PEM.

1.2. Enquadramento do Sistema de Comunicação

Os sistemas de tecnologia PET baseiam-se na detecção de fotões de raios gama emitidos pelo corpo humano quando injectado por uma substância radioactiva (marcador). Cada colisão ocorrida numa célula entre partículas da célula e partículas do marcador emite 2 fotões que se deslocam em trajectórias rectilíneas e em direcções opostas.

Os fotões emitidos são detectados por cristais cintilantes, que reagem com os fotões libertando energia sob a forma de luz. A energia dos impulsos luminosos é proporcional à intensidade da emissão detectada pelos cristais. Essa energia luminosa pode ser transformada em impulsos eléctricos através de transdutores adequados.

Estes sinais eléctricos são adquiridos e processados por um sistema electrónico de grande complexidade, DAE (Data Acquisition Electronics), que tem como objectivo identificar e separar os dados significativos ou relevantes, isto é, os dados que possam indiciar a presença de células cancerígenas. Posteriormente, estes dados relevantes são enviados para um computador externo, onde através de algoritmos adequados se procede à reconstituição da imagem que por sua vez constitui a base do diagnóstico.

1

A iniciativa partiu do Prof. João Varela, docente do IST (Instituto Superior Técnico) e investigador do LIP (Laboratório de Instrumentação e Física Experimental de Partículas) e do CERN (Centre European de Recherche Nucleaire). É actualmente o coordenador científico deste projecto.

2

O consórcio é constituído pelas Instituições seguintes: Tagus Parque, (LIP), INESC Inovação (INOV), INESC Investigação e Desenvolvimento (INESC-ID), Instituto de Engenharia e Gestão Industrial (INEGI), Instituto de Biofísica e Engenharia Biomédica (IBEB) da Faculdade de Ciências Universidade de Lisboa, Instituto de Biomédico de Investigação em Luz e Imagem (IBILI) da Faculdade de Medicina Universidade de Coimbra, e Hospital Garcia da Orta.

(23)

Assim, e muito sucintamente, o sistema PEM é composto por 3 grandes subsistemas (ver Figura 1-2). Um scanner constituído por planos paralelos de cristais cintilantes detecta a radiação emitida pelas células humanas. O sistema DAE é responsável pela aquisição e processamento electrónico dos dados adquiridos. Finalmente, um ou mais computadores recolhem os dados processados electronicamente e utilizam-nos para reconstituição de imagem.

Figura 1-2 - Arquitectura de Topo do sistema PEM

É necessário que os dados provenientes de FE (Front-End Electronics) e processados pelo sistema electrónico sejam transmitidos de forma fiável e tão rapidamente quanto possível para os computadores de reconstituição de imagem.

O primeiro requisito, a fiabilidade, advém do facto de que não são admissíveis diagnósticos incorrectos. De facto, trata-se de uma doença muito séria, pelo que um diagnóstico errado poderia ter efeitos devastadores na pessoa que o ouve. Daí a necessidade de garantir uma comunicação fiável e segura.

O segundo requisito, a rapidez, resulta do facto de que o exame deve ser realizado tão rapidamente quanto possível, na medida em que se trata de um exame traumático para a paciente [16]. Estes requisitos justificam a necessidade de se dispor de um sistema eficiente e fiável de comunicação entre o DAE e o computador de reconstituição de imagem.

O sistema de comunicação entre a electrónica de aquisição e processamento de sinais e o computador externo é pois um componente crítico do sistema PEM. O trabalho que se descreve nesta Dissertação refere-se ao desenvolvimento deste sistema de interface e comunicação entre o sistema de processamento electrónico de dados e os computadores para reconstituição de imagem.

1.3. Objectivos do Trabalho

O trabalho que se descreve nesta dissertação visa genericamente, o estudo, desenvolvimento, implementação e validação de um sistema de comunicação bidireccional entre o sistema DAE do sistema PEM, e um PC exterior. O sistema de comunicação deve assegurar:

(24)

• Transferência de dados e de comandos, quer de configuração quer de controlo, do PC para o sistema DAE, relativa a:

o Dados de calibração;

o Indicação do modo de operação do sistema; o Ordem de inicio de auto-teste;

o Pedido de indicação de relatório de erros; o Pedido de indicação de ‘status’.

• Transferência de dados entre o sistema DAE e o PC relativamente a: o Dados relativos ao exame médico;

o Respostas a comandos do PC.

Pretende-se ainda que:

• As soluções desenvolvidas se baseiem em componentes e protocolos standards ou compatíveis com os standards de comunicação mais usuais;

• Os tempos de desenvolvimento do sistema não prejudiquem o andamento do projecto;

• Os custos das soluções sejam tão reduzidos quanto possível;

• A arquitectura desenvolvida seja flexível para ser adaptável a actualizações; • No sistema final, se atinja uma taxa de transferência mínima de 250 MB/s.

1.4. Contribuições Relevantes

O desenvolvimento de um sistema de comunicação, que não é meramente um sistema genérico a ser configurado depois para aplicações específicas, mas um sistema de comunicação que deve funcionar inserido num sistema maior, e que deve ser desenvolvido dentro de prazos constitui um trabalho de vulto que exige uma equipa de desenvolvimento.

Neste caso, duas pessoas trabalharam no estudo de soluções possíveis para o problema em análise. Desenvolveram arquitecturas, validaram a sua funcionalidade e avaliaram o seu desempenho.

O trabalho que constitui objecto desta Dissertação refere-se ao trabalho efectuado, pelo autor, no desenvolvimento do sistema de comunicação. No entanto e de forma a facilitar a compreensão do que foi feito, irão ser feito algumas referências e breves descrições do trabalho realizado pelo segundo membro da equipa, no âmbito do mesmo trabalho.

Destacam-se nesta secção, as contribuições relevantes para o desenvolvimento do sistema de comunicação do sistema PEM.

(25)

• Estudo da viabilidade da implementação de um sistema de comunicação baseado no protocolo PCI. Este estudo envolveu:

o Procura de soluções tecnológicas para a implementação do protocolo PCI;

o Estudo do dispositivo QL5064;

o Desenvolvimento (desenho e simulação) do sistema de comunicação PC  DAE;

o Implementação física e teste laboratorial do sistema de comunicação PC  DAE inserido na placa TGR/DCC do sistema DAE.

• Estudo da viabilidade da implementação de um sistema de comunicação baseado nos protocolos USB e S-LINK:

o Desenvolvimento e implementação física de um sistema de comunicação baseado no protocolo USB e S-LINK. Neste âmbito, foi desenvolvido, na FPGA da TGR/DCC, o módulo de comunicação via canal USB e S-LINK, que permite, enviar os dados gerados quer na TGR/DCC quer no PC;

o Desenvolvimento do ambiente de simulação e teste laboratorial deste sistema como elemento genérico;

o Inserção do sistema de comunicação no sistema DAE;

o Desenvolvimento do ambiente de simulação deste sistema com dados reais.

1.5. Organização da Dissertação

Esta Dissertação está organizada do seguinte modo. No capítulo inicial apresentam-se o problema, o seu contexto e a motivação para a procura de soluções. Nos capítulos 2 e 3 descreve-se brevemente o sistema PEM, no âmbito do qual se enquadra o trabalho desenvolvido e ainda o sistema electrónico de aquisição e processamento de dados do sistema PEM, destacando-se a sub-sistema electrónico que mais directamente condiciona o sub-sistema de comunicação a desenvolver. No capítulo 4 descreve-se a interface de comunicação que se pretende desenvolver, na perspectiva da identificação dos seus requisitos funcionais e de desempenho e analisam-se protocolos que podem satisfazer tais requisitos. No capítulo 5 descreve-se o trabalho realizado em torno da implementação do protocolo PCI, nomeadamente, as tecnologias de implementação possíveis, o desenvolvimento da arquitectura, os resultados de simulação, a sua realização física e os resultados dos testes laboratoriais. No capítulo 6 descreve-se o trabalho realizado em torno da implementação do protocolo USB, o desenvolvimento da arquitectura, os resultados de simulação, a realização física e os resultados dos testes laboratoriais. Nos capítulos 7 e 8 apresentam-se as conclusões e o trabalho futuro. Apresentam-se seguidamente as referências e finalmente um conjunto de anexos contendo informação importante mas não crítica para a compreensão do trabalho descrito.

(26)
(27)

2. Sistema PEM

O sistema PEM baseia-se no princípio de funcionamento da tecnologia PET aplicada tradicionalmente a sistemas de exame de corpo inteiro. Como foi referido anteriormente, o âmbito de aplicação do sistema PEM é o exame da glândula mamária e também da axila. Estudos teóricos, baseados em modelos estatísticos, demonstram que por aproximar os detectores de radiação (scanners) do órgão sob exame se obtêm imagens com resolução consideravelmente mais elevada que nos sistemas PET tradicionais, e consequentemente, permitindo diagnósticos mais precisos, em tempos de exame bastante mais curtos.

As simulações realizadas com os modelos referidos, e o recurso a algoritmos inovadores de reconstrução de imagem [17][18][19][20][21], indicam que é possível detectar tumores com dimensões tão diminutas quanto a 1-2 mm (com tempos de exame satisfatórios).

Na Figura 2-1 pode-se observar o conceito subjacente ao sistema de mamografia PEM e ainda uma fotografia do robot construído3

para este primeiro protótipo.

(a) (b)

Figura 2-1 – Conceito PEM (a) e fotografia do robot (b)

2.1. Princípio de Funcionamento do Sistema PEM

A fim de avaliar a natureza e a quantidade de dados a processar e transmitir num sistema deste tipo, justifica-se a descrição breve do seu princípio de funcionamento. Assim, num sistema PET, a possível presença de células cancerígenas é assinalada pela emissão de radiação emitida pelas células humanas quando reagem com uma solução radioactiva, designada genericamente por ‘marcador’.

No sistema PEM, o paciente é injectado com uma solução radioactiva, composta por moléculas similares à glicose agregada ao marcador F18 (fluorodeoxyglucose F18) (18F-FDG) [3][7][22]. Todas as células do corpo humano reagem com esta solução e em consequência emitem radiação. Porém, o metabolismo de células cancerígenas faz com que estas células absorvam uma quantidade de glicose maior do que as células saudáveis e por conseguinte uma maior quantidade da

3

(28)

solução. A emissão de fotões pelas células cancerígenas é pois consideravelmente superior à originada em células normais.

Quando a 18F-FDG é introduzida no paciente, os positrões libertados colidem com os electrões das células. Essa colisão dá origem à libertação de dois fotões gama de 511KeV de energia que se movem numa trajectória rectilínea mas em sentidos opostos.

A detecção desses fotões é realizada, no sistemas PEM, através de cristais cintilantes LYSO[23][24], que transformam a energia dos fotões em energia luminosa. A transdução dessa energia luminosa em energia eléctrica é conseguida através de células fotossensíveis, especificamente, através de fotodíodos de avalanche (APD – Avalanche Photo Diodes). O par cristal/APD comporta-se como um sensor de radiação.

Como se pode observar na Figura 2-2, usando duas células fotossensíveis pode-se determinar a trajectória do par de fotões libertado na colisão.

Figura 2-2 – Princípio de funcionamento dos detectores

Usando planos de sensores podem-se detectar as trajectórias de vários pares de fotões libertados pela mesma célula. Diz-se que foi detectada uma coincidência.

A intersecção das trajectórias de fotões permite identificar a presença de lesões. Este mecanismo é ilustrado na Figura 2-3.

(29)

Um dos objectivos da electrónica de aquisição e processamento de sinal, DAE, do sistema PEM é identificar a ocorrência de coincidências e os dados a ela associados. Estes dados, que correspondem à emissão simultânea de fotões, são considerados dados relevantes. Os sistemas de reconstituição de imagem permitem identificar os pontos de maior luminosidade. Estes pontos podem indiciar a presença de células cancerígenas.

2.2. Arquitectura do Sistema PEM

Como foi referido, o sistema PEM tem 3 grandes subsistemas, nomeadamente, o scanner, o sistema electrónico de aquisição e processamento de sinais e o computador de reconstituição de imagem (Figura 2-4). O sistema electrónico de aquisição e processamento de sinais está distribuído em dois subsistemas, nomeadamente, o sistema de electrónica de FE (Front End) que é acoplado aos planos de cristais e o sistema DAE (Data Acquisition Electronics) que está separado do scanner.

Figura 2-4 - Arquitectura do sistema PEM

O sistema FE é responsável pelo processamento dos sinais analógicos gerados pelos APD em resultado da detecção dos fotões. Para se obter uma boa resolução na reconstrução da imagem, esses sinais têm que ser amplificados e processados. Após serem amplificados, os sinais são amostrados e são identificados os sinais de maior energia. Em seguida essa informação é digitalizada e enviada para a electrónica de aquisição de dados (DAE), juntamente com a identificação do cristal onde ocorreu a detecção. Uma descrição mais detalhada encontra-se na secção 2.4 deste documento.

O sistema DAE é o responsável pela aquisição e processamento dos sinais provenientes do Front End. Esses sinais são classificados e filtrados, para que só os dados relevantes sejam enviados para o computador de reconstrução de imagem. Esse sistema e os seus constituintes são descritos em mais detalhe na secção 0 deste documento.

(30)

2.3. Organização dos Planos de Cristais

Os cristais que constituem o scanner PEM estão distribuídos por dois planos paralelos. Cada plano tem 3072 cristais organizados em módulos de 32 (Figura 2-5). Estes módulos, por sua vez estão agrupados em super-módulos. Cada super-módulo é constituído por 6 módulos. Existem 16 super-módulos em cada plano de cristais.

Figura 2-5 – Módulo de 32 cristais

Cada cristal tem associado a si dois APDs (Figura 2-6), um no topo e outro na base. Os APDs estão organizados em matrizes de 32 (ver Figura 2-7). Cada módulo de 32 cristais tem associado a si 64 APDs (2 matrizes de 32 APDs, uma na base e outra no topo do módulo).

LYSO

APD

APD

Sinal

eléctrico eléctricoSinal

Figura 2-6 – Cristal associado a dois APD’s

Figura 2-7 – Matriz de 32 células fotossensíveis

A utilização de dois APDs por cristal permite determinar com mais precisão a localização do ponto em que no cristal se deu a reacção com o fotão. Este processo permite determinar com mais precisão a localização da célula emissora de radiação.

A interacção dos raios gama com o cristal não é uniforme ao longo do cristal. Assim, a luminosidade detectada pelos dois APDs associados não será igual. Medindo a diferença de energia

(31)

detectada por cada APD e usando posteriormente essa informação em algoritmos de reconstrução de imagem, consegue-se melhorar a resolução de imagem.

2.4. Electrónica de Front-End

Os sinais eléctricos gerados pelos APDs não podem ser enviados tal como são captados dos cristais para o DAE. De facto, esses sinais são condicionados a uma dada forma (conforme sugerida pelos estudos teóricos), são amostrados, digitalizados, filtrados e finalmente enviados para o DAE. A filtragem elimina todos os sinais cujo valor da energia é inferior a determinado valor, abaixo do qual os sinais são considerados ruído. A filtragem e o pré-processamento dos sinais gerados em cada super módulo são realizados por um circuito integrado de aplicação específica (ASIC – Application Specific Integrated Circuit) [25][31] desenvolvido para esta aplicação. Além dessas tarefas o ASIC é responsável também pela identificação do APD que gerou o sinal. Essa informação é em seguida enviada digitalmente, em série, para a electrónica de aquisição de dados (DAE).

Cada ASIC é responsável pela informação gerada pelos APD’s de uma das faces de um super-modulo, ou seja, existem 32 ASICs por cada plano de cristais, 64 ASICs no total.

Os estudos teóricos realizados demonstram que numa janela de observação de 10 ns não é de esperar mais do que duas interacções para cada conjunto de 192 cristais. Parte do processamento realizado pelos ASICs, consiste na escolha dos dois sinais de maior energia provenientes de cada super-modulo. Pelo que são escolhidos 64 sinais em cada plano de cristais, ou seja, no total são enviados para o DAE 128 sinais.

2.4.1 Caracterização dos Sinais

Como resultado do processamento de um sinal eléctrico proveniente de um APD, o ASIC gera um sinal analógico com a forma representada na Figura 2-8. Esse sinal é em seguida amostrado, e a representação digital das amostras agrupada em pacotes os quais são enviados para o DAE.

(32)

Cada pacote é composto por um conjunto de 10 amostras de 10 bits cada, e por uma identificação do APD que gerou essa informação. A identificação é composta por 11 bits (1 bit de inicio, 8 bits de identificação, 1 bit de erro e um bit de stop).

Cada cristal tem 2 APDs, com a mesma identificação espacial, pelo que, por cada cristal, são enviados 2 pacotes para o DAE.

No decorrer das interacções entre os raios gama e os cristais, pode acontecer que a energia de um raio gama não seja detectada por um único cristal, mas se distribua por vários. Esse efeito é denominado por efeito de Compton (Figura 2-9). Dependendo da forma como a interacção se dá, a energia detectada pelos vários cristais pode ser diferente, pelo que a intensidade do sinal eléctrico gerado pelos APDs dos cristais que partilham essa energia será também diferente.

Figura 2-9 – Efeito de Compton

A interacção, ou colisão, entre um fotão gama e um cristal é denominado por hit. O conjunto de hits associados à mesma colisão entre um positrão e um electrão, designa-se por evento. Dito de outro modo, considera-se que existe um evento quando é detectada uma coincidência A tecnologia PET baseia-se na identificação e caracterização de eventos.

A energia associada a cada hit não é necessariamente igual em todas as circunstâncias. Os hit associam-se no sistema PEM, a dois tipos de situações. O fotoevento corresponde ao hit cuja interacção produz o maior nível de energia. Todos os outros designam-se por Compton.

A distinção entre os dois tipos de hits descritos anteriormente é feita, usando valores de energia específicos, designados limiar de fotoevento e limiar de Compton, respectivamente. Todos os hits que geram valores de energia inferior ao limiar de Compton são considerados ruído, e automaticamente rejeitados.

Para que vários hits possam ser associados ao mesmo fotão gama, é necessário que sejam simultâneos, isto é, que ocorram num determinado intervalo de tempo. Tratando-se de um sistema síncrono, o tempo é medido em ciclos de relógio, donde é necessário definir ‘simultâneo’ neste contexto.

(33)

2.4.2 Tipos de Eventos

No sistema PEM, distinguem-se 3 tipos de eventos:

• Evento Normal – é um evento associado a uma coincidência. A informação associada a este tipo de evento é a informação relevante para o diagnóstico.

• Evento Single – se somente um dos fotões originados na colisão interagir com um ou mais cristais num plano de cristais. A informação gerada por esse tipo de evento é utilizada para calibrar o sistema PEM [31].

• Evento Aleatório – Esse tipo de evento é uma abstracção, que corresponde a um pseudo Evento Normal. Consiste em associar no mesmo evento, dados resultantes de ocorrência de hits num dos planos de cristais, com os dados associados à ocorrência de hits no outro plano de cristais, embora a ocorrência dos dois conjuntos de hits estejam separados por um determinado intervalo de tempo (designado por Atraso Aleatório).

Como se referiu um evento normal está associado a uma coincidência. O intervalo de tempo associado a ‘simultaneidade’ é definido em termos de janelas temporais de aceitação e rejeição de hits.

O intervalo de tempo máximo para que hits, que ocorram em ambos os planos de cristais, sejam considerados como pertencentes ao mesmo evento, designa-se por Janela de Aceitação.

O intervalo de tempo mínimo para que hits, que ocorram em ambos os planos de cristais, não sejam considerados como pertencentes ao mesmo evento, designa-se por Janela de Rejeição.

Quando vários hits ocorrem num único plano de cristais, eles são considerados pertencentes ao mesmo evento se ocorrerem dentro de um intervalo de tempo designado por Janela de Compton.

(34)
(35)

3. Electrónica de Aquisição de Dados

Como foi referido, o objectivo trabalho que é a base desta dissertação é o desenvolvimento de uma interface de comunicação entre a electrónica de aquisição de dados, DAE, e o PC de reconstituição de imagem. Torna-se, pois, necessário descrever com algum detalhe o sistema DAE, destacando os aspectos que podem influenciar o trabalho que se descreve nesta dissertação. Assim, referem-se os requisitos funcionais e de desempenho a que deve satisfazer o sistema DAE, os seus modos de funcionamento e apresenta-se ainda uma descrição breve da arquitectura, na medida em que condiciona a interface de comunicação.

3.1. Requisitos do sistema DAE

Os requisitos que o sistema DAE deve satisfazer são os seguintes:

• 128 canais de dados correspondentes aos 2 planos de cristas; • Frequência de trabalho: 100MHz;

• Taxa de eventos Single: 10M eventos; • Taxa de eventos Normais: 1M eventos; • Detecção de eventos Aleatórios; • Parâmetros de calibração programáveis; • Aceitação de 2 Compton por plano de cristais; • Normalização de energia.

3.2. Cenários de Funcionamento do DAE

As funcionalidades que devem ser realizadas pelo sistema DAE estão organizadas em diversos modos de operação. Cada modo de operação é designado cenário. Podem identificar-se no PEM 6 cenários correspondentes aos 6 modos de operação do sistema:

• Modo Normal/Aleatório; • Modo Single;

• Carregamento de constantes;

• Carregamento do modo de funcionamento; • Pedido de erros;

• Modo de teste.

No modo Normal/Aleatório o sistema deve detectar eventos normais ou aleatórios eliminando os eventos Single, que nesse modo de funcionamento são considerados ruído. Esse modo de funcionamento é usado durante um exame PEM. Os dados obtidos neste modo de

(36)

funcionamento são relevantes e consequentemente, enviados para o PC para reconstituição da imagem.

O modo de funcionamento Single é usado quando se procede à calibração do sistema. Neste modo só são detectados eventos Single. A informação recolhida nesse modo de funcionamento, é enviada para o PC e posteriormente usada no cálculo das constantes de calibração do sistema.

No modo de carregamento de constantes, o PC descarrega para a memória do DAE as constantes K necessários para calibrar o sistema. No total são descarregadas 12288 constantes, uma por cada APD do sistema.

No carregamento do modo de funcionamento do sistema, o PC indica ao DAE em que modo de funcionamento o mesmo irá funcionar.

No pedido de erros, é pedido ao sistema, por meio do PC, os erros ocorridos no sistema em determinado modo de funcionamento e em determinado intervalo de tempo. Os erros são em seguida enviados para o PC.

No modo de teste, o PC envia um pedido para que o sistema execute um auto-teste funcional (BIST – Build-In Self Test). O resultado desse auto-teste é enviado em seguida para o PC.

3.3. Arquitectura do sistema DAE

Apresenta-se na Figura 3-1 a arquitectura de alto-nível do DAE. Genericamente, o sistema DAE é responsável pela recepção dos dados provenientes do FE, tratamento e filtragem dos mesmos, e pelo envio dos dados relevantes para o PC de reconstituição de imagem. Detalhes de desenho e implementação do sistema DAE podem encontrar-se em [26] a [30].

Plano de Cristais A Face A Face B Plano de Cristais B Face C Face D Electrónica Front End Electrónica Front End Electrónica Front End Electrónica Front End DAQ + FLR (8x) TGR DCC DAE

Figura 3-1 – Arquitectura de alto-nível do sistema DAE

Numa perspectiva de alto-nível, o sistema DAE realiza duas grandes funcionalidades, nomeadamente:

• Qualificação e filtragem de dados [33];

(37)

A cada uma destas grandes funcionalidades corresponde um subsistema do DAE. Na Figura 3-2 pode-se observar, em representação mais detalhada, o diagrama de blocos do sistema DAE, destacando os subsistemas responsáveis pela Qualificação e Filtragem de Dados e pela Organização e Encaminhamento de Dados.

Figura 3-2 – Subsistemas e blocos constituintes do sistema DAE

3.4. Subsistema de Qualificação e Filtragem de Dados

Como o nome indica, o Sistema de Qualificação e Filtragem de Dados identifica e filtra os dados provenientes do FE. Os dados resultantes deste processamento são posteriormente enviados para o PC de reconstrução de imagem.

Esse subsistema é composto por 3 módulos principais:

• Módulo de Aquisição de Dados (DAQ – Data Acquisition Module); • Módulo de Filtragem (FLT – Filter Module);

(38)

O módulo de aquisição de dados filtra os dados enviados pelo FE e normaliza os sinais de entrada. Essa normalização é necessária para compensar os diferentes comportamentos dos cristais e dos APDs [34].

O módulo Filtro identifica e elimina todos os eventos com mais de 3 hits em qualquer dos planos de cristais.

O módulo Trigger detecta os eventos Normais e Aleatórios com coincidências em ambos os planos de cristais.

3.4.1 Módulo de Aquisição de Dados

O módulo DAQ [33] tem três funções distintas: a filtragem dos dados, a normalização da energia dos sinais de entrada e a determinação da fase do sinal de entrada.

Assim, os dados provenientes da electrónica do Front End são filtrados por comparação do valor da energia que lhe está associada com os valores de limiar de energia, previamente carregados no sistema. Dependendo do valor da sua energia, os dados podem ser considerados pertencentes a um fotoevento ou a um Compton. Os valores de limiar correspondentes designam-se, respectivamente, por Limiar de Fotoevento e o Limiar de Compton.

A normalização dos sinais de entrada é efectuada para compensar a diferença de comportamento dos cristais na presença de fotões e de todos os componentes electrónicos do Front End. Deste modo garante-se que as diferenças de energia detectadas nos diversos cristais se devem, de facto, a diferentes energias associadas às reacções fotão/cristal e não às diferenças tecnológicas dos cristais/APDs entre si.

Essa normalização é efectuada multiplicando o valor das amostras por uma constante K. Existe um valor K diferente para cada APD.

O sinal recebido é composto por 10 amostras de 10 bits cada. No instante em que chega a primeira amostra é associada a esses dados uma etiqueta temporal que indica o instante da aquisição da amostra. No entanto de forma a identificar o instante correcto, é necessário saber a diferença entre o sinal real (analógico) e o sinal amostrado Para isso recorre-se ao uso de um parâmetro Delta [8] [35] [36] (ver Figura 3-3). Essa última operação corresponde ao cálculo da fase do sinal de entrada.

(39)

Figura 3-3 – Exemplo de um sinal de entrada e uso do parâmetro Delta

3.4.2 Módulo de Filtragem

O módulo Filtro [33] detecta e elimina todos os eventos que tenham mais de três hits por plano de cristais. Para tal tem que identificar todos os hits que pertencem ao mesmo evento, i.e., que tenham a mesma etiqueta temporal e que a diferença entre os valores Delta, correspondentes, seja inferior ao parâmetro Janela de Aceitação de Compton.

3.4.3 Módulo Trigger

O módulo Trigger [33] é responsável pela detecção de coincidências do tipo Normal ou Aleatório, e consequentemente, pela detecção de dados relevantes para a reconstrução de imagem. Para que os hits detectados nos dois planos de cristais possam ser considerados pertencentes ao mesmo evento têm que se verificar as seguintes condições:

• Ter a mesma etiqueta temporal;

• A diferença dos valores de Delta dos hits pertencentes ao mesmo plano tem que ser superior ao parâmetro Reject Window;

• A diferença dos valores de Delta dos hits de planos diferentes tem que ser inferior ou igual ao parâmetro Accept Window.

3.5. Subsistema de Organização e Encaminhamentos de Dados

O subsistema de Organização e Encaminhamento de Dados é responsável pela gestão do tráfego de dados no sistema DAE e pelo envio dos mesmos para o PC de reconstituição de imagem. Esse sistema é composto por dois blocos principais:

• Unidade de Memória;

(40)

3.5.1 Unidade de Memória

A unidade de memória armazena os dados que passaram na filtragem inicial feita pelo DAQ e que foram seleccionados pelo módulo Trigger, como dados relevantes a ser enviados para o PC de reconstituição de imagem.

É composta por uma memória FIFO e por uma memória de duplo porto. A memória FIFO é usada para guardar os dados provenientes do sistema quando o mesmo se encontra a funcionar no modo Single e a memória de duplo porto é usada para guardar os dados provenientes do sistema quando o mesmo se encontra a funcionar em modo Normal/Aleatório.

3.5.2 Concentrator de Dados

O módulo concentrador de dados agrupa os dados armazenados na memória e que têm a mesma etiqueta temporal, isto é, que foram gerados em ‘simultâneo’ e consequentemente, pertencem ao mesmo evento, formatando-os em seguida para serem enviados para o PC de reconstituição de imagem.

O concentrador de dados é responsável pelo agrupar todos os dados de amostras pertencentes ao mesmo evento. Os dados provenientes de cada plano não chegam ao mesmo tempo, pelo que os dados relativos ao primeiro conjunto de hits são armazenados numa memória temporária.

Quando os dados relativos ao segundo conjunto de hits chegam, o DCC agrupa-os com os do primeiro e envia-os para o PC.

(41)

4. Interface de Comunicação DAE

 PC

Com foi referido, a interface de comunicação estabelece o diálogo entre o sistema DAE e o PC. A fim de identificar os módulos do sistema DAE que interagem com o sistema de comunicação, apresenta-se na Figura 4-1 a arquitectura detalhada do sistema DAE.

LVDS FE B U F F E R S LVDS FE G B U S D B U S DAQ Board TGR/ DCC ROC B U F F E R S TGR DCC DCC ROC PCI Controller TGR/DCC FPGA PCI FPGA PCI BUS PC TGR/ DCC Board

DAQ DAQROC

Filter DAQ FPGA

Test Module DAQ DAQROC

Filter DAQ FPGA Test Module Test Module DB Arb. C O N C O N C O N LVDS FE B U F F E R S LVDS FE G B U S D B U S Placa DAQ TGR/ DCC ROC B U F F E R S TGR DCC DCC ROC PCI Controller TGR/DCC FPGA PCI FPGA PCI BUS PC Placa TGR/ DCC DAQ ROCDAQ

Filtro DAQ FPGA DAQ DAQ ROC Filter DAQ FPGA Módulo de Teste Módulo de Teste DB Arb. C O N C O N C O N Interface De Comunicação Módulo de Teste

Figura 4-1 – Arquitectura detalhada do Sistema DAE

Como é ilustrado na Figura 4-1, o sistema é implementado em 5 placas; nomeadamente, 4 placas DAQ (Data Acquisition) e uma placa Trigger que comunicam entre si, através de 2 barramentos dedicados, o GBUS e o DBUS. Detalhes deste sistema podem encontrar-se em [31][33][34]. Está fora do âmbito desta dissertação entrar nesse detalhe.

Pode observar-se na Figura 4-1 que a interface de comunicação está localizada na placa TGR/DCC, dialogando com o módulo DCC ROC da TGR/DCC FPGA e com o PC, numa configuração genérica como a que se ilustra na Figura 4-2.

(42)

No que se refere às funcionalidades relevantes para o bloco de comunicação, o bloco DCC efectua ainda as seguintes tarefas:

• Recebe dados relativos aos diversos modos de funcionamento do sistema e envia-os para o PC;

• Recebe do PC os parâmetros de calibração e envia-os para o módulo TGR;

• Recebe do PC os comandos referentes à mudança de modo de operação do sistema; • Recebe do sistema sinais de controlo e envia-os para o PC.

4.1. Requisitos da Interface de Comunicação

4.1.1 Requisitos de Desempenho

No início do desenvolvimento do presente trabalho, estimava-se que a taxa de transferência necessária entre o DAE e o PC tivesse um valor máximo de 250MB/s. Este valor foi obtido com base em modelos de MonteCarlo [8] e o simulador Geant4 [18] [20]. Embora, ao longo do desenvolvimento do protótipo se tenha verificado que na primeira versão seria suficiente uma taxa de transferência da ordem dos 150MB/s, o presente trabalho foi desenvolvido usando como referência o primeiro valor, ou seja, 250MB/s.

Outro requisito exigido refere-se à frequência de trabalho. Esta frequência é imposta pelo DAE, dado que o sinal de relógio que alimenta a interface de comunicação é proveniente deste módulo, e também pelo barramento de dados entre os dois sistemas funciona à mesma frequência. O valor da frequência de trabalho foi fixado em 100MHz.

Assim, os requisitos de desempenho do sistema de comunicação são os seguintes:

• Taxa de transferência de dados – 250MB/s; • Frequência de trabalho – 100MHz.

4.1.2 Requisitos Funcionais

Os dados transferidos entre o DAE e o PC podem ser agrupados em três categorias:

• Comandos e correspondentes resposta do sistema; • Dados de calibração do sistema;

• Dados relevantes (amostras associadas a fotoeventos).

A interface tem que reconhecer as diversas categorias de dados a fim de encaminhá-los correctamente. Os que não se enquadram em nenhuma das categorias anteriores são descartados. Todas as categorias de dados contêm um cabeçalho, composto por vários bits, com a sua identificação. Apresenta-se seguidamente os formatos das diversas categorias de dados.

(43)

4.1.2.1 Formato dos Comandos

Os comandos são usados para controlar o funcionamento de todo o sistema ou para requerer informação do sistema. Apresenta-se de seguida a descrição desses comandos.

• Modo de funcionamento (CNT=110)

Indica ao DAE que tipo de eventos este deverá capturar. As duas opções são eventos Normal/Aleatório ou eventos Single.

Formato do pacote:

S.M = 1  Modo Normal/Aleatório; S.M = 0  Modo Single.

• Iniciar/terminar exame (CNT=11110)

Permite ou inibe a aquisição de dados obtidos durante o exame. Formato do pacote:

OnOff = 1  Ligado OnOff = 0  Desligado

• Pedido de Erros ocorridos nos Módulos DAQ (CNT=1110)

Esse comando permite inquirir o DAE acerca de erros ocorridos no modo de funcionamento em curso. É enviado ao PC uma resposta com esses erros.

Formato do pacote PC -> DAE:

Formato do pacote (resposta ao pedido de erros) DAE-> PC (CNT=001)

CNT=110 X X X S.M. S.M. S.M.

63 61 60 3 2 1 0

CNT=11110 X X X OnOff OnOff OnOff

63 59 58 3 2 1 0

CNT=1110 X X X

63 60 59 0

CNT=001 XXX Err CTE Err Flag Err GBUS Err Sat Err FE Par.

(44)

Existem 5 tipos de erros:

• Err CTE - Erro no Carregamento das constantes Ks;

• Err Flag - Erros na transmissão pelo Barramento Genérico dos dados entre FPGAs DAQ e FPGA TGR/DCC;

• Err GBUS - Erros no Barramento Genérico; • Err SAT - Erros de Saturação das Amostras; • Err FE - Erros no Front-End.

• Teste do Sistema (CNT=111110)

Este comando pede ao DAE que inicie o auto-teste. No final é enviado ao PC uma resposta com o resultado desse auto-teste.

Formato do pacote PC -> DAE:

O sistema faz o Auto-Teste e envia o resultado para o PC. Os diversos tipos de resultados são:

• DAQ – Resultado do teste a cada FPGA DAQ; • TD - Resultado do teste à FPGA TRG/DCC;

• GBUS – Resultado dos testes ao barramento genérico; • DBUS - Resultado dos testes ao barramento dedicado;

• TBUS_Error – Resultado do teste à comunicação da FPGA TGR/DCC com as FPGAs DAQ.

Para que o sistema esteja sem falhas é necessário que os bits 0 a 34 estejam todos a “1” e o bit 35 a “0”.

Formato do pacote DAE->PC (CNT=0001):

CNT=111110 X X X

63 58 57 0

CNT=0001 X X X TBUS_Error DBUS GBUS TD DAQ

(45)

4.1.2.2 Dados de Calibração do Sistema

Os dados de calibração referem-se ao carregamento de constantes de calibração. Este carregamento consiste no envio de dados, do PC para o DAE, para calibração do sistema. Existem 2 tipos de constantes: Particulares (para cada cristal), num total de 6144 e Gerais (relativamente ao sistema).

Formato dos pacotes:

• Constantes particulares (CNT=0)

o Cristal ID – Identificação do cristal; o KA Sup – KA superior; o KA Inf – KA inferior; o KB Sup – KB superior; o KB Inf – KB inferior; o K Sup – K superior; o K Inf – K inferior. • Constantes gerais (CNT=10) o FETh - FotoEvent Threshold; o CmpTh - Compton Threshold; o CmpWin - Compton Window; o AcpWin - Accept Window; o RejWin - Reject Window; o DelayLng - Delay Length.

4.1.2.3 Dados Relevantes

(amostras associadas a fotoeventos)

A informação relativa a fotoeventos é enviada para o PC. Esses dados podem ser provenientes de um exame (Modo Normal/Aleatório), e nesse caso serão usados na reconstrução da imagem, ou originados no Modo Single, e nesse caso a informação é usada no cálculo das constantes de calibração do sistema.

Por cada coincidência são enviados tramas com 1+4N pacotes de 64 bits, onde N é o número de hits.

CNT=0 X Crystal ID KA Sup KB Sup K Sup KA Inf KB Inf K Inf Par 63 62 61 49 48 41 40 33 32 25 24 17 16 9 8 1 0

CNT=10 X X X FETh CmpTh CmpWin AcpWin RejWin DelayLng Par

(46)

Formato dos pacotes:

• Inicio da trama (CNT= 01)

• Inicio de um conjunto de 4 pacotes (se pertencer ao primeiro hit) (CNT= 10)

• Inicio de um conjunto de 4 pacotes (se pertencer aos restantes hits) (CNT= 10)

• Pacotes seguintes (CNT= 10)

Nesse último pacote os dois bits mais significativos (CNT) podem ter dois valores: o “11” - No caso de ser o último pacote da trama;

o “01” - Caso contrário.

4.2. Protocolos de Comunicação

A fim de identificar os protocolos que podem satisfazer os requisitos do sistema, bem como as tecnologias de implementação possíveis e as correspondentes vantagens e desvantagens, apresenta-se seguidamente, uma breve panorâmica dos protocolos de comunicação existentes.

Na Tabela 4-1 apresentam-se os protocolos mais utilizados em sistemas ligados a computadores pessoais (PC – Personal Computer) destacando-se como características de avaliação as seguintes: largura da palavra (número de bits), frequência de trabalho, taxas de transferência máximas e tipo de interface.

CNT=01 EventNumber EventTime1/2

63 62 61 30 29 0

CNT=10 EventTime 2/2 00 # Hit Tgr Type ∆ Comp TimeTag ∆ Orig ID Sample 1/4

63 62 61 60 59 58 57 54 53 52 51 44 43 35 34 27 26 14 13 0

CNT=10 X X 00 # Hit Tgr Type ∆ Comp TimeTag ∆ Orig ID Sample 1/4

63 62 61 60 59 58 57 54 53 52 51 44 43 35 34 27 26 14 13 0 CNT=10 Sample 2/4 63 62 61 0 CNT=10 Sample 3/4 63 62 61 0 CNT Sample 4/4 63 62 61 0

(47)

Número de bits Freq. de trabalho Taxa de transferência máxima Interface RS-232 1 -- 115,2 Kb/s Serie Paralelo 8 2 MHz 2,5 MB/s Paralelo USB v2.0 1 48 MHz 60 MB/s Serie Firewire 1 -- 100 MB/s Serie PCI v2.2 32/64 33,33 e 66,66 MHz 533 MB/s Paralelo PCI-X 1.0 64 100 e 133 MHz 1024 MB/s Paralelo PCI-X 2.0 64 266 e 533 MHz 4,3 GB/s Paralelo PCI-E v1.1 1 a 32 (1x – 32x) 2,5 GHz 8 GB/s (16 GB/s full-duplex) Serie

Tabela 4-1 – Protocolos de comunicação mais usuais em PCs comerciais

Entre os protocolos mais antigos utilizados neste âmbito estão os protocolos RS-232 [37] e o Paralelo (IEEE 1284) [38].

O protocolo RS-232 é um protocolo série constituído por dois sinais de dados, um de envio e outro de recepção. O envio de dados pode ser feito simultaneamente nos dois sentidos (full-duplex). Os restantes sinais são usados para controlo.

O protocolo paralelo é um protocolo, como o nome indica, em que os dados são enviados em paralelo. É constituído por 8 sinais de dados (1 byte). Esses sinais podem referir-se a dados que podem ser enviados nos dois sentidos mas não ao mesmo tempo (half-duplex). Os restantes sinais são maioritariamente de controlo.

Esses dois protocolos são de fácil utilização e amplamente aplicados nos PCs actuais. Porém, apresentam contudo uma taxa de transferência muito inferior ao desejado (250MB/s), pelo que não podem ser utilizados neste sistema.

Entre os protocolos mais modernos e com taxas de transferência mais elevadas estão os protocolos USB [39], Firewire (IEEE 1394b) [38] e PCI [40], este último nas suas várias versões.

O protocolo USB é de razoável simplicidade e com taxas de transferências na ordem das dezenas de megabytes, pelo que ainda se encontra em valores inferiores aos pretendidos. O mesmo acontece com o protocolo Firewire.

Tendo em conta que se deveriam utilizar interfaces existentes em PC comerciais, a escolha recaiu sobre a interface PCI.

Contudo, na fase de desenvolvimento do protótipo pretendiam-se soluções de desenvolvimento rápido. Dadas as dificuldades com a tecnologia escolhida para implementar a solução PCI (como se verá no capítulo seguinte, chegou-se à conclusão que muitas das funcionalidades do sistema poderiam ser validadas a taxas de transferência menores.

Assim, dada a simplicidade e a divulgação do protocolo USB, implementou-se uma solução baseada nesse protocolo e que se apresenta no capítulo 6.

(48)
(49)

5. Solução PCI

O barramento PCI foi escolhido inicialmente como protocolo de comunicação, devido á sua ampla utilização nos actuais PCs e por ser dos poucos protocolos que consegue garantir a largura de banda exigida no sistema. Das diversas versões do protocolo PCI existentes a mais utilizada é a versão “simples”, que tem como principais características poder trabalhar a 32bits/33,33MHz ou a 64bits/66,66MHz. Esta última configuração corresponde a uma largura de banda teórica de 533MB/s.

Neste trabalho adoptou-se a solução 64bits/66,66MHz. Como o sistema de aquisição de dados está no exterior do PC, na solução implementada a comunicação entre os dois é conseguida por intermédio de uma ponte PCI-to-PCI. Essa ponte é composta por um conjunto de duas placas: a PCI-SB [41] e a PMC-SBF [42], da empresa Carlo Gavazzi Computing Solutions [43] (anteriormente AuroraTech). Essas placas têm como função “transportar” o barramento PCI do PC para o exterior, criando assim um barramento PCI secundário.

No lado da placa TGR\DDC a comunicação entre a FPGA e a ponte PCI-to-PCI consegue-se usando um circuito integrado comercial, o QL5064 [50] [51], fornecido pela empresa QuickLogic Corporation [49].

A decisão de se usar essa solução, assim como a escolha das placas que constituem a ponte PCI-to-PCI e o dispositivo QL5064 foram feitas por terceiros antes da entrada do autor no projecto. Deste modo não se discute nessa Dissertação as considerações que foram tomadas, as várias soluções encontradas nem os motivos que levaram à escolha desses dispositivos.

O QL5064 é composto por um core PCI, que comunica com a PMC-SB, e por uma FPGA. Nesta FPGA é implementado a arquitectura que permite a comunicação com a FPGA TGR/DCC. Na Figura 5-1 destaca-se a interface entre FPGA TGR/DCC e o PC através do QL5064.

TGR/DCC ROC BU FF ER S TGR DCC DCC ROC QL5064 FPGA TGR/DCC Placa TGR/DCC PC

(50)

Este circuito foi a solução escolhida no presente trabalho para implementar o protocolo PCI. O trabalho realizado descreve-se em detalhe na secção 5.3.

Na Figura 5-2 apresentam-se detalhes da arquitectura da solução PCI, indicando a sombreado o âmbito desta solução. Nas secções que se seguem, descrevem-se os vários componentes utilizados na solução implementada.

Figura 5-2 – Arquitectura da solução PCI

5.1. Ponte PCI-to-PCI

A ponte PCI-to-PCI tem como objectivo criar um barramento PCI secundário no exterior do PC. Essa tarefa é realizada pelas 2 placas comerciais representadas na Figura 5-3, nomeadamente, a PCI-SB (a) e a PMC-SBF (b).

A comunicação entre estas duas placas é efectuada utilizando o protocolo Starfabric[44] (Figura 5-2) desenvolvido pela Stargen, Inc. [45]. Essa comunicação é totalmente gerida pelas placas referidas e transparente para o utilizador.

Cada uma das placas contém um circuito integrado, o SG2010 da Stargen, Inc. que faz a ponte PCI-Starfabric. Esse circuito integrado juntamente com o protocolo Starfabric permite criar uma rede de dispositivos de alto desempenho. Na configuração usada nesse trabalho, o conjunto composto pelas referidas placas permite criar a ponte PCI-to-PCI necessária.

(a) (b)

(51)

Cada uma das placas tem integrado dois links full-duplex de 2.5Gbps. A ligação entre elas é feita por intermédio de cabos Ethernet blindados Cat 5 [46]. A comunicação pode ser feita a uma distância máxima 10 metros sem perda de desempenho. Os dois links podem ser usados em conjunto, criando deste modo redundância na transmissão dos dados, e consequentemente, aumentando a fiabilidades, ou por forma a aumentar a taxa de transferência, duplicando assim o valor máximo da transferência de dados. As interfaces PCI dessas placas são compatíveis com a norma PCI 2.2 [47], e podem funcionar 64bits/66,66MHz ou a 32bits/33,33MHz.

A configuração dessas placas é bastante simples, no sentido em que cada placa contém um conjunto de 4 DIP Switches (Dual-in Line Package Switches) que indicam à placa como funcionar. No que respeita ao modo de funcionamento, o protocolo define que numa topologia Starfabric, as placas possam funcionar em modo Bridge ou Gateway. O modo Bridge permite criar a ponte PCI-to-PCI necessária para o presente trabalho, pelo que será a configuração escolhida. O modo Gateway permite usar as funcionalidades avançadas do SG2010, quando a placa está inserida numa rede Starfabric. Em relação ao comportamento, a placa que está inserida no barramento PCI primário tem que ser configurada para funcionar no modo Root, as restantes no modo Leaf.

A configuração utilizada neste sistema é a descrita na Tabela 5-1.

Função

Numero On Off PCI-SB PMC-SBF

1 Root Leaf On Off

2 Bridge Gateway On On

3

Modo Teste4 -- --

4

Tabela 5-1 – Configuração dos DIP Switch das placas Starfabric

5.2. Dispositivo QL5064

Para efectuar a comunicação entre a FPGA da TGR/DCC e a PMC-SBF foram consideradas inicialmente duas soluções. A primeira solução consistia na aquisição de um core PCI da empresa Xilinx [48]. A segunda opção consistia na aquisição de um circuito integrado, o QL5064, composto por um core PCI embebido e por uma FPGA. Do ponto de vista de funcionamento no que respeita ao protocolo PCI, ambas as soluções eram semelhantes. No entanto a diferença de custo de cada produto era significativa5

Para desenvolver as diversas aplicações nesse dispositivo, o fabricante disponibiliza, um pacote de ferramentas desenhadas especificamente para os seus produtos. O pacote em questão é o

, pelo que os responsáveis pelo projecto decidiram pela aquisição do QL5064.

4

Para uso interno do pessoal da Aurora Technologies. 5

O preço do core PCI da XIlinx rondava os €10.000,00, enquanto que o preço da aquisição de cada QL5064 era de aproximadamente €100,00

Referências

Documentos relacionados

Aqui indica-se um programa de monitoramento, com base nos indicadores previamente estabelecidos no plano de gestão. Estas informações necessitam-se ser avaliadas, tanto

UNIRIO Pró-Reitoria de Pós-Graduação, Pesquisa e Inovação PROPGPI Departamento de Pós-Graduação Departamento de Pesquisa

–  gerência do grupo –  restrições de ordenação •  outros –  espaços de tuplas –  sistemas pub/sub –  ..... Grupos

O valor da reputação dos pseudônimos é igual a 0,8 devido aos fal- sos positivos do mecanismo auxiliar, que acabam por fazer com que a reputação mesmo dos usuários que enviam

insights into the effects of small obstacles on riverine habitat and fish community structure of two Iberian streams with different levels of impact from the

Neste sentido, o presente estudo busca como objetivo principal realizar um revisão de literatura sobre as atuais intervenções realizadas nas empresas com vistas a minimizar os

ed è una delle cause della permanente ostilità contro il potere da parte dell’opinione pubblica. 2) Oggi non basta più il semplice decentramento amministrativo.

Posteriormente, em Junho de 1999, ingressei no grupo Efacec, onde fui responsável pela elaboração de projetos e propostas para a construção de Estações de Tratamento