Plataforma para Aplicação em Sistemas Embarcados
Transcrição
Plataforma para Aplicação em Sistemas Embarcados
Plataforma para Aplicação em Sistemas Embarcados Baseada em Processador Geode LX Helano Castro, Jardel Silveira, Raul Moreira, Caio Ramos, Vanilson Leite, Alex Vasconcellos, Emílio Miranda, Alexandre Coelho, Marcelo Araújo Laboratório de Engenharia de Sistemas de Computação (LESC) / Departamento de Teleinformática (DETI) / Universidade Federal do Ceará (UFC) [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected] Resumo Este trabalho apresenta o desenvolvimento e resultado dos testes de uma plataforma de hardware apta a atender os requisitos dos sistemas embarcados modernos. Foram realizados protótipos da plataforma proposta e os resultados dos testes funcionais, de verificação de engenharia e de compatibilidade eletromagnética são apresentados. 1. Introdução As aplicações que se utilizam de sistemas embarcados modernos, além de exigirem destes, características tradicionais, como baixo consumo e tamanho reduzido, também exigem agora um alto poder de processamento, similar àquele encontrado em sistemas computacionais do tipo desktop. Em parte, isso deve-se aos atuais recursos de multimídia e conectividade, agora disponíveis nestas aplicações. Nesse sentido, como forma de atender a esses requisitos, observa-se o surgimento de novas plataformas de desenvolvimento de sistemas embarcados. Do ponto de vista do software, não é mais viável utilizar sistemas operacionais proprietários, ou desenvolvidos especificamente para as aplicações modernas, devido à velocidade com que novos protocolos de comunicação e novas tecnologias se tornam disponíveis. A arquitetura x86 é utilizada para computadores pessoais desde que estes surgiram na década de 80 e, por isso, existe uma vasta gama de sistemas operacionais e device drivers disponíveis para esta plataforma. Portanto, do ponto de vista do software, essa plataforma é adequada ao desenvolvimento dos sistemas embarcados modernos. Neste trabalho foi desenvolvida uma plataforma para utilização em sistemas embarcados modernos, baseada no processador Geode LX [1], o qual é baseado na arquitetura x86. Alguns outros sistemas embarcados ou simples aplicações portáteis foram desenvolvidos baseados no processador Geode LX [2-4]. 2. Arquitetura Geode LX O processador Geode LX da AMD (Advanced Micro Devices) é compatível com a arquitetura x86. Na verdade, a arquitetura desse processador é composta pelo conjunto dos seguintes cores: • • • • • • • • • • • CPU Core; Controlador de Memória (GLMC); Controlador do Processador (GLCP); Bloco de Segurança; Porta de Entrada de Vídeo (VIP); Geode PCI Link (GLPCI); Processador de Vídeo; Controlador de Display; Processador Gráfico; Unidade de Interface GeodeLink 0 (GLIU0); Unidade de Interface GeodeLink 1 (GLIU1). A comunicação entre os diversos cores ocorre através das GLIUs, os quais são roteadores da comunicação interna do chip, cujo diagrama de blocos é mostrado na Figura 1. O GLMC é responsável pela comunicação e controle dos módulos de memória externa DDR SDRAM. Com exceção das interfaces de memória RAM e interfaces de vídeo (VIP, TFT e CRT), a comunicação entre o Geode LX e qualquer outro periférico (incluindo memória flash de inicialização do processador) é feita através do barramento PCI, o qual é tratado pelo core GLPCI. O processador Geode LX foi concebido para trabalhar em conjunto com o chipset CS5535/CS5536 [5] também da AMD, o qual é referenciado por esta como companion chip ou simplesmente companion. A arquitetura da plataforma Geode (Figura 3) é composta principalmente por dois chips, o próprio processador e o companion, e é similar a arquitetura de hardware encontrada em placas-mãe (Figura 4) de computadores pessoais. Figura 1. Diagrama de blocos do processador Geode LX Figura 3. Diagrama de blocos de arquitetura de placa-mãe baseada em Geode LX O companion (Figura 2) provê ao processador, através do barramento PCI, interfaces de comunicação para todos os periféricos do sistema, exceto memória RAM e interfaces de vídeo. Os seguintes cores compõem o companion chip: As placas-mãe de computadores pessoais são formadas por 3 chips principais: o processador, o north bridge e o south bridge. Assim como o Geode, os processadores de computadores pessoais modernos têm o controlador de memória RAM integrado ao processador, o qual em processadores anteriores, era integrado ao north bridge. Nos computadores pessoais modernos, a principal função do north bridge é controlar as interfaces de vídeo e estabelecer comunicação com o south bridge através de um link de média velocidade, se compararmos com o link de comunicação entre processador e north bridge, que é conhecido como Front Side Bus, ou simplesmente FSB. Conforme dito anteriormente, o processador Geode LX integra em sua pastilha de silício os controladores de interface de vídeo. Portanto, se compararmos a arquitetura de um sistema baseado em Geode LX e aquela encontrada nas placas-mãe dos computadores pessoais modernos, podemos considerar que o north bridge está integrado ao processador. • • • • • • • GLIU; GLPCI; Controlador AC97; Controlador de interface com barramento LPC; Controlador do Processador (GLCP); Controlador para 4 portas USB; Controlador de dispositivo de armazenamento com interface IDE ou Memória Flash. 3. Plataforma Desenvolvida Figura 2. Diagrama de blocos do companion chip O projeto de nossa plataforma, mostrada na figura 4, foi desenvolvida baseando-se no processador Geode LX, e foi concebida para ser utilizada tanto em sistemas embarcados como em Thin Clients [6]. O layout das interfaces de velocidade foi feito baseado no documento de layout de referência [7]. Além de seguir as recomendações deste documento, simulações pré e pós layout permitiram otimizar o desempenho de tais interfaces e garantir o funcionamento do sistema na primeira revisão de hardware. limites definidos pelas especificações das mesmas[12][13][14][15]. Três das quatro portas USB foram aprovadas no teste de pre-compliance para USB 2.0 [13], executado com o osciloscópio 54855A da Agilent Technologies, e equipado com um kit de pontas de provas ativas, adequadas para medição de sinais de alta velocidade. Apresentamos abaixo (Figura 5) o diagrama de olho de uma das portas aprovadas no teste. Figura 4. Diagrama de blocos da placa desenvolvida Todas as características da PCB (Printed Circuit Board) que abriga a eletrônica projetada foram calculadas de forma a dar o maior desempenho e menor custo. O stack-up de apenas 4 camadas contribui para manter o baixo custo da plataforma. As características geométricas do layout [8][9] foram calculadas de forma a garantir a funcionalidade de todas as interfaces. Esse estudo garante que, os sinais de uma mesma interface que compõem um subgrupo, estejam sincronizados dentro de margens de atraso, aceitáveis pela tecnologia dos buffers da interface. 4. Testes e Resultados Protótipos da plataforma desenvolvida foram submetidos a testes funcionais e testes de verificação de engenharia. Os testes funcionais validam a plataforma em nível sistêmico, ou seja, submetendo a mesma a uso nas condições para as quais foi projetada. Para esses testes, foi utilizado o software PC Diagnosis, desenvolvido pelo LESC [10]. Além disso, outro programa de teste, o TC Diagnosis (Thinclient Diagnosis), foi utilizado. Esse programa executa paralelamente processos do tipo I/O bound e CPU bound [11] para verificar se o sistema funciona adequadamente em condições extremas. Além de testes funcionais, que comprovaram o perfeito funcionamento do projeto, foram executados ainda testes complementares como forma de verificar se os parâmetros elétricos das interfaces internas e externas estão dentro de Figura 5. Diagrama de olho da porta USB 2 A Figura 6 mostra o diagrama de olho da porta que foi reprovada pelo teste, onde é possível ver que o sinal atravessa a região de referência demarcada em cinza, a qual delimita a abertura mínima do olho. Foram realizadas alterações no roteamento dos sinais de dados dessa porta, de forma a melhorar a qualidade do sinal e resolver este problema. Testes posteriores validaram a porta inicialmente reprovada. Figura 6. Diagrama de olho da porta USB 4 Para realização dos testes de compatibilidade eletromagnética (EMC) [16][17], a plataforma foi utilizada para aplicação em um thin client. Para essa aplicação, o sistema foi submetido a testes de emissão radiada segundo a norma CISPR22 [18] para classes A e B, a qual se aplica a produtos industriais e residenciais, respectivamente. As figuras 7 e 8 comparam os resultados dos testes para a norma CISPR22, das revisões 1 e 2 do sistema, para polarização vertical e horizontal, respectivamente. A linha tracejada nas figuras indica os limites máximos permitidos de emissão (eixo y) em cada freqüência (eixo x) para classe B (aplicações industriais) e a linha contínua indica os limites máximos de emissão permitidos em cada freqüência para classe A (aplicações residenciais). A curva em cinza nos gráficos mostra a emissão radiada para a revisão 1 do sistema e a curva em preto para a revisão 2. Os melhoramentos para a revisão 2 incluíram alterações no layout, mas principalmente na blindagem do case do thin client. 5. Conclusão A revisão 1 da plataforma passou em todos os testes funcionais. Soluções para os problemas encontrados nos testes de verificação de engenharia de compatibilidade eletromagnética (EMC) foram propostas e implementadas na revisão 2. Esta revisão 2 passou nos testes funcionais e de compatibilidade eletromagnética. Com exceção dos testes de USB, os quais foram feitos por laboratório externo para a revisão 1, os demais testes de verificação de engenharia foram refeitos e a plataforma foi aprovada. A plataforma concebida provou-se extremamente competitiva, tanto do ponto de vista de desempenho e funcionalidades, como também de custo. Sistemas operacionais comerciais foram embarcados na plataforma, de modo a se obter parâmetros de validação dessas características. Os autores gostariam de agradecer a Manoel Barbin, pela contribuição nos testes de validação da plataforma e preparação das figuras que ilustram os resultados dos testes de EMC. 6. Referências Figura 7. CISPR 22 – Emissão radiada – 10 metros – Polarização Vertical Figura 8. CISPR 22 – Emissão radiada – 10 metros – Polarização Horizontal [1] Amd Geode LX Processors Data Book, May 2007, Publication ID: 33234F [2] Brotherton, T. et al, Generic integrated PHM/controller system, Aerospace, 2005 IEEE Conference, Page(s):3427-3437 [3] Observatory Lawrence Ashley, The Aastino: Automated Astrophysical Site Testing International, citeseer.ist.psu.edu/595568.html [4] One Laptop Per Child (OLPC) Hardware Specification, http://wiki.laptop.org/go/Hardware_specification [5] Amd Geode CS5536 Companion Device Data Book, May 2007, Publication ID: 33238G [6] Richards, D. Linux Thin Client Networks Design and Deployment, Packt Publishing, August 2007 [7] Amd Geode LX Processor and CS5535/5536 Companion Devices Layout Recommendation, October 2005, Publication ID: 32739E [8] Johnson, H.,Graham, Martin., A Handbook of Black Magic, Pretince Hall, 1993 [9] Douglas Brooks, Signal Integrity Issues and Printed Circuit Board Design, Third printing, Pretince Hall, 2003. [10] PC Diagnosis software, http://www.lesc.ufc.br/projetos.php [11] Modern Operating Systems, Tanenbaum, A. Prentice Hall, 3rd. Edition, December 2007 [12] Intel Low Pin Count (LPC) Interface Specification, http://www.intel.com/design/chipsets/industry/lpc.html, August 2002, Revision 1.1, document number 251289001 [13] USB 2.0 Specification, http://www.usb.org/developers/docs/, April 27, 2000 [14] Conventional PCI 3.0, http://www.pcisig.com/specifications/conventional/ o. [15] Jedec Standard n 79E, Double Data Rate (DDR) SDRAM Specification, http://www.jedec.org, May 2005 [16] Ott, H., Noise Reduction Techniques in electronics Systems, Second Edition, John Willey & Sons, 1988 [17] Bruce Archambeault, PCB Design For Real-World EMI control, Second Printing, Kluwer Academic Publishers, 2004. [18] Information technology equipment – Radio disturbance characteristics – Limits and methods of measurement, Fourth Edition, IEC, 2003-04