Spelling suggestions: "subject:"eletrônica""
81 |
Redes-em-chip de baixo custoCardozo, Rodrigo da Silva January 2005 (has links)
Com as recentes tecnologias de fabricação é possível integrar milhões de transistores em um único chip, permitindo a criação dos chamados System-on-Chip (SoCs), que integram em um único chip um grande número de componentes (tipicamente blocos reutilizáveis conhecidos por núcleos). Quanto mais complexos forem estes sistemas, melhores técnicas de projeto serão necessárias para também reduzir o tempo e custo do projeto. Uma destas técnicas, chamada de Network-on-Chip (NoC), permite melhorar a performance da comunicação entre os núcleos e, ao mesmo tempo, fornecer uma plataforma de comunicação escalável e que pode ser reutilizada para um grande número de sistemas. Uma NoC pode ser definida como uma estrutura de roteadores e canais ponto-a-ponto que interconectam os núcleos de um sistema, provendo o suporte de comunicação entre eles. Os dados são transmitidos pela rede na forma de mensagens, que podem ser divididas em unidades menores chamadas de pacote. Uma das desvantagens desta plataforma de comunicação é o impacto na área do sistema causado pelos roteadores. Dentro deste contexto, este trabalho apresenta uma arquitetura de roteador de baixo custo, com o objetivo de permitir o uso de NoCs em sistemas onde a área do roteador representará um grande impacto no custo do sistema. A arquitetura deste roteador, chamado de Tonga, é baseada em um roteador chamado RASoC, um soft-core para SoCs. Nesta dissertação será apresentada também uma rede heterogênea, baseada na rede SoCIN, e composta por dois tipos de roteadores – RASoC e Tonga. Estes roteadores visam diferentes objetivos: Rasoc alcança uma maior performance comparada ao Tonga, mas ocupa área consideravelmente maior. Potencialmente, uma NoC heterogênea otimizada pode ser desenvolvida combinando estes roteadores, procurando o melhor compromisso entre área e latência. Os modelos desenvolvidos permitem a estimativa de área e do desempenho das arquiteturas de comunicação propostas e são apresentados resultados de performance para algumas aplicações.
|
82 |
MoCHA : arquitetura dedicada para a compensação de movimento em decodificadores de vídeo de alta definição, seguindo o padrão H.264Azevedo Filho, Arnaldo Pereira de January 2006 (has links)
O padrão H.264 foi desenvolvido pelo JVT, que foi formado a partir de uma união entre os especialistas do VCEG da ITU-T e do MPEG da ISO/IEC. O padrão H.264 atingiu seu objetivo de alcançar as mais elevadas taxas de processamento dentre todos os padrões existentes, mas à custa de um grande aumento na complexidade computacional. Este aumento de complexidade impede, pelo menos na tecnologia atual, a utilização de codecs H.264 implementados em software, quando se deseja a decodi cação de vídeos de alta de nição em tempo real. Essa dissertação propõe uma solução arquitetural de hardware, denominada MoCHA, para compensação de movimento do decodi cador de vídeo de alta de nição, segundo o padrão H.264/AVC. A MoCHA está dividida em três blocos principais, a predição dos vetores de movimento, o acesso à memória e o processamento de amostras. A utilização de uma cache para explorar a redundância dos dados nos acessos à mem ória, em conjunto com melhorias propostas, alcançou economia de acessos à memória superior a 60%, para os casos testados. Quando uma penalidade de um ciclo por troca de linha de memória é imposta, a economia de ciclos de acesso supera os 75%. No processamento de amostras, a arquitetura realiza o processamento dos dois blocos, que dão origem ao bloco bi-preditivo, de forma serial. Dessa forma, são economizados recursos de hardware, uma vez que a duplicação da estrutura de processamento não é requerida. A arquitetura foi validada a partir de simulações, utilizando entradas extraídas de seqüências codi cadas. Os dados extraídos, salvos em arquivos, serviam de entrada para a simulação. Os resultados da simulação foram salvos em arquivos e comparados com os resultados extraídos. O processador de amostras do compensador de movimento foi prototipado na placa XUP Virtex-II Pro. A placa possui um FPGA VP30 da família Virtex-II PRO da Xilinx. O processador PowerPC 405, presente no dispositivo, foi usado para implementar um test bench para validar a operação do processador de amostras mapeado para o FPGA. O compensador de movimento para o decodi cador de vídeo H.264 foi descrito em VHDL, num total de 30 arquivos e cerca de 13.500 linhas de código. A descrição foi sintetizada pelo sintetizador Syplify Pro da Symplicity para o dispositivo XC2VP30-7 da Xilinx, consumindo 8.465 slices, 5.671 registradores, 10.835 LUTs, 21 blocos de memó- ria interna e 12 multiplicadores. A latência mínima para processar um macrobloco é de 233 ciclos, enquanto a máxima é de 590, sem considerar misses na cache. A freqüência máxima de operação foi de 100,5 MHz. A arquitetura projetada é capaz de processar, no pior caso, 36,7 quadros HDTV de 1080 por 1920, inteiramente bi-preditivos, por segundo. Para quadros do tipo P, que não utilizam a bi-predição, a capacidade de processamento sobe para 64,3 quadros por segundo. A arquitetura apresentada para o processamento de quadros bi-preditivos e a hierarquia de memória são, até o momento, inéditas na literatura. Os trabalhos relativos a decodi cadores completos não apresentam a solução para esse processamento. Os resultados apresentados tornam a MoCHA uma solução arquitetural capaz de fazer parte de um decodi cador para vídeos de alta definição.
|
83 |
Fabricação e caracterização de um sensor múltiplo sensível à posiçãoSouza, Eliasibe Luis de January 2011 (has links)
Este trabalho aborda o design, a fabricação e a caracterização de um sensor óptico de posição, o múltiplo PSD (Position Sensitive Detector). O sensor é composto de 64 PSDs unidimensionais em paralelo. O PSD é um sensor do qual o sinal de saída é uma medida direta do centro de gravidade do spot do feixe de luz que incide sobre ele, devido ao foto-efeito lateral. O múltiplo PSD foi fabricado com tecnologia planar de silício. No processo de fabricação foram utilizadas três máscaras litográficas e realizadas duas implantações iônicas de boro para formação de uma camada tipo-p no substrato de silício tipo-n. O sensor foi caracterizado elétrica e opticamente. Da caracterização elétrica, obtiveram-se informações dos contatos de alumínio e da resistência dos PSDs (resistência média de 570 kΩ), através das medidas I-V. Das medidas I-V feitas entre PSDs vizinhos obteve-se uma tensão de ruptura de 25 V. A caracterização óptica mostrou que os PSDs têm boa linearidade (cerca de 0,1 % de não linearidade) e resolução melhor que 10 μm. Análises com variação de potência do feixe de luz foram realizadas. A partir de 10 μW de potência do feixe, observou-se uma saturação da sensibilidade do PSD em aproximadamente 10 mV/mm e da foto-tensão lateral em aproximadamente 60 mV, quando o feixe estava incidindo num ponto fixo na área ativa a cerca de 5 mm de um contato, numa variação da potência de 78 nW a 65 μW. Medidas de balanceamento com dois feixes também foram realizadas, sendo obtidas funções de transferência com a variação das potências dos dois feixes para distâncias entre feixes de aproximadamente 2 e 11 mm. Elas mostraram que a sensibilidade aumenta com o aumento da potência e a distância entre os feixes. Foram feitas medidas com os dois feixes incidindo em pontos simétricos ao ponto de tensão nula. Alterando a potência de um dos feixes, a foto-tensão lateral varia no mesmo sentido da variação entre as potências dos feixes. Essa medida confirma a utilização do dispositivo como um diferenciador de sinal óptico, que pode ser usado em várias aplicações, e.g. em um espectrômetro diferencial. / This work deals with design, fabrication and characterization of an optical position sensor, so-called multiple PSD. The sensor is made of 64 one-dimensional PSDs made parallel to each other. A Position Sensitive Detector - PSD is a sensor which produces a signal that is a direct measure for the centre of gravity of the incident light beam due to the lateral photo-effect. The silicon planar technology was used to make multiple PSDs. Three photo masks were used in the fabrication process in which two boron ion implantations were employed to make a p-type layer in an n-type silicon substrate. Electrical and optical characterizations were realized on the sensor. From electrical characterization, information about the resistive layer and aluminium contacts on resistive layers was obtained. The mean resistance was 570 kΩ. I-V characteristics were measured between neighbour PSDs, from where one can see the breakdown voltage in about 25 V. The optical characterization showed the PSDs have about 0,1% nonlinearity and resolution better than 10 μm. Analyses with variations of the light beam’s power were made. These measurements showed that for a power from about 10 μW, the PSD sensibility saturated in about 10 mV/mm as well as the lateral photo voltage in about 60 mV, when the light beam was hitting the active area on a fixed point located about 5 mm from a contact, within 78 nW to 65 μW range power. In balancing measurements with two light beams placed about 2 mm (and later 11 mm) away from each other and with power variation, transfer functions were obtained. They showed sensitivity grows with increase of power and distance between the light beams. Measurements with the two beams hitting two symmetrical points to the null voltage point were made, from where one can see lateral voltage is null for beams with the same power. Changing the power of one of the beams, the lateral voltage moves in the same direction of the variation between the beam powers. This result confirms the use of a PSD like an optical differentiator, in this way it can be used in several applications, e.g. in a differential spectrometer.
|
84 |
Investigação da interface entre filmes dielétricos crescidos termicamente e o carbeto de silício monocristalino com potencial uso em microeletrônicaRosa, Aline Tais da January 2012 (has links)
Na presente Dissertação, foram caracterizadas as estruturas dos filmes dielétricos (dióxido de silício) crescidos termicamente sobre carbeto de silício monocristalino (c-SiC) e as interfaces formadas. Através de análises por Espectroscopia de Fotoelétrons Induzidos por Raios X, foi verificada a presença de uma camada interfacial de oxicarbeto de silício, gerado durante a oxidação térmica do c-SiC. Com técnicas de análise com feixe de íons (Análise por Reação Nuclear e Espectroscopia de Retroespalhamento Rutherford em geometria canalizada) foi possível determinar a espessura do filme dielétrico formado através de ajustes das curvas obtidas. Os dados de espessura foram comparados aos obtidos por Microscopia Eletrônica de Transmissão, técnica que também permitiu identificar a interface irregular entre o filme dielétrico e o substrato monocristalino através de imagens de alta resolução. A Espectroscopia de Perda de Energia de Elétrons, auxiliada pela análise de Microscopia Eletrônica de Transmissão-Varredura, permitiu verificar a existência da camada interfacial de oxicarbeto de silício através de pequenas alterações nas curvas obtidas em aquisições em perfil entre o substrato e o filme dielétrico. / In this dissertation, structures of dielectric films (silicon dioxide) thermally grown on single crystal silicon carbide (c-SiC) and the interfaces formed were characterized. An interfacial layer of silicon oxycarbide generated during thermal oxidation of c-SiC was detected through X-ray Photoelectron Spectroscopy analysis. The thickness of the dielectric film formed was determined using ion beam techniques (Nuclear Reaction Analysis and Rutherford Backscattering Spectroscopy in channeling geometry), through adjustments of the obtained curves. The thicknesses data were compared to those obtained by Transmission Electron Microscopy, technique that also identified the irregular interface between the dielectric film and the crystal substrate by High-Resolution images. The Electron Energy Loss Spectroscopy and Scanning Transmission Electron Microscopy analysis allowed to verify the existence of interfacial layer of silicon oxycarbide through small changes in the curves obtained in profile between the substrate and the dielectric film.
|
85 |
Combinação de estratégias para tolerar falhas em interconexões e aumentar o rendimento na produção de redes intra-chip / Combination of strategies to tolerate faults in the interconnections and to increase the yield in the manufacture of networks-on-chipKologeski, Anelise Lemke January 2011 (has links)
Uma rede intra-chip pode oferecer melhor desempenho e escalabilidade do que um barramento tradicional, e, portanto, ela tem sido utilizada como uma arquitetura alternativa de comunicação dentro de um complexo sistema intra-chip. O uso de estruturas tolerantes a falhas em rede intra-chip está crescendo, devido ao fato de ser quase impossível produzir circuitos integrados sem qualquer defeito em tecnologias nanométricas. Consequentemente, o uso de tolerância a falhas é crucial para permitir que circuitos com alguma quantidade de defeitos ainda alcancem o mercado, incrementando o rendimento e o tempo de vida de um chip, além de garantir a correta funcionalidade do dispositivo. Com base nos resultados prévios de teste e diagnóstico, a rede intra-chip pode ter soluções embarcadas tolerante a falhas que podem proporcionar a correta comunicação na rede. Uma estratégia para manipular múltiplos defeitos nas interconexões da rede intra-chip com baixo impacto no atraso da comunicação e em energia é apresentada nesta dissertação. O método tolerante a falhas pode garantir a funcionalidade da rede com múltiplos defeitos em qualquer interconexão, e com múltiplas interconexões defeituosas. As técnicas propostas usam a informação do teste para adaptar o roteamento e o pacote de dados permitindo configurar as características de tolerância a falhas entre as interconexões da rede intra-chip. Uma estratégia de remapeamento pode ser associada para minimizar o impacto de algumas falhas na aplicação. Resultados para a combinação de três diferentes técnicas na rede intra-chip mostram que o atraso na comunicação pode ter impacto mínimo quando comparado com o sistema livre de falhas. Comparações tem mostrado que nossa proposta pode proporcionar uma melhor tolerância a falhas contra falhas permanentes do que Hamming. Nós mostramos que a estratégia proposta tem um impacto reduzido no desempenho e na potência enquanto que uma solução tradicional como código de Hamming tem um impacto significativo. / A Network-on-Chip (NoC) can offer better scalability and performance than a traditional bus, and therefore it has been used as an alternative communication architecture inside of a complex System-on-Chip. The use of fault tolerance structures in NoC is growing, due to the fact that it is almost impossible to manufacture integrated circuits without any defect in nanometer technologies. Consequently, the use of fault tolerance methods is crucial to allow that circuits with some amount of defects still reach the market, increasing yield and the lifetime of a chip, besides ensuring the correct functionality of the device. Based on previous test and diagnosis results, the NoC can have embedded fault-tolerant solutions that can provide the correct communication in the network. A strategy to handle multiple defects in the NoC interconnections with low impact on the communication delay and energy is presented in this thesis. The fault-tolerant method can guarantee the functionally of the NoC with multiple defects in any interconnection, and with multiple faulty interconnections. The proposed techniques use information from testing to adapt the routing and the packet, which allows configuring fault-tolerant features along the NoC interconnections. A remapping strategy can be associated to minimize the impact of some faults in the application. Results for the combination of three different techniques in the NoC show that the communication delay can have minimal impact when compared to a fault-free system. Comparisons have shown that our proposal can provide a better fault tolerance against permanent faults than Hamming code in terms of energy and performance impact. We show that the proposed strategy has a minimized impact in performance and power while a traditional fault-tolerant solution like Hamming code has a significant impact.
|
86 |
Etude des parties operatives a elements modulaires pour processeurs monolithiquesSusin, Altamiro Amadeu January 1981 (has links)
Resumo não disponível
|
87 |
Single event transient effects in clock distribution networksQuispe, Raul Dario Chipana January 2014 (has links)
A redução na escala dos semicondutores tem aumentado a suceptibilidade de componentes eletrônicos a radiação. Single event transient (SET) afeta cada vez mais os circuitos integrados. Os efeitos da radiação podem afetar as redes de relógio dos circuitos integrados. Durante o impacto de uma partícula ionizada, a carga pode ser coletada na saída do buffer da rede de relógio e provocar um clock glich, clock jitter e clock skew. Como consequência do impacto, é possivel notar erros no fluxo do controle e no fluxo de dados do sistema. A presente tese investiga a suscetibilidade ao SET nas redes de relógio dos circuitos. Nós estamos interessados nos caminhos mais sensíveis da rede e nos registros que apresentam mais probabilidade de mudar de estado (bit-flip). Alguns bit-flips tem mais probabilidade de provocar uma falha na saída do circuito, enquanto outros podem ser mascarados pela aplicação. Nesta tese propomos uma nova metodologia para identificar os nós mais sensíveis e calcular o soft error rate causado pelo SET nas redes de relógio. Nossa metodologia utiliza uma ferramenta desemvolvida para esta tese chamada EXT-CLK, a ferramenta extrai a rede de relógio dos archivos de desenho do circuito para realizar diferentes simulações de injeção de SET. Como estudo de caso foi selecionado o circuito SRAM arbiter. Centenas de simulações foram feitas com o intuito de identificar os nós mais sensíveis da rede de relógio. Os resultados mostram 17 registros do ciruito SRAM arbiter terem alto índice de suscetibilidade. A informação encontrada nos resultados poderão ajudar os desenhadores a escolher a técnica de mitigação mais apropriada para o circuito antes de ser fabricado. / Technology scaling to semiconductor has increased the radiation-induced susceptibility of electronic devices. Single Event Transient (SET) are becoming increasingly problematic for integrated circuits (ICs). Radiation effects may occur in the clock distribution networks of the ICs. During the strike of an ionizing particle, charge may be collected on the output node of the clock buffer, provoking a clock glitch, clock jitter and clock skew. As consequence of the impact, it is possible to notice errors in the control flow or data flow of the system. This work investigates the SET susceptibility in the clock distribution network of the circuit. We are interested in the most sensitive paths of the network and registers that are most likely to flip in the clock network. Some bit-flips are most likely to provoke a fault in the IC output once a failure occur in those elements. In the present work we propose a new methodology to identify the most sensitive nodes and to calculate the soft error rate due to SET in clock distribution network. This new methodology uses a tool developed in this thesis named EXT-CLK. The tool extracts the clock network from layout design files, to perform different simulations of SET injection in electrical and logic level. The SRAM arbiter circuit has been chosen as a case study. Thousands of electrical simulations have been performed in order to identify the sensitive nodes of the clock network. Results show that 17 registers of SRAM arbiter exhibit high vulnerability factor. This information can help the designers to use some mitigation techniques on those registers before the manufacturing process.
|
88 |
Redes-em-Chip : arquiteturas e modelos para avaliação de área e desempenhoZeferino, Cesar Albenes January 2003 (has links)
Com o advento dos processos submicrônicos, a capacidade de integração de transistores tem atingido níveis que possibilitam a construção de um sistema completo em uma única pastilha de silício. Esses sistemas, denominados sistemas integrados, baseiam-se no reuso de blocos previamente projetados e verificados, os quais são chamados de núcleos ou blocos de propriedade intelectual. Os sistemas integrados atuais incluem algumas poucas dezenas de núcleos, os quais são interconectados por meio de arquiteturas de comunicação baseadas em estruturas dedicadas de canais ponto-a-ponto ou em estruturas reutilizáveis constituídas por canais multiponto, denominadas barramentos. Os futuros sistemas integrados irão incluir de dezenas a centenas de núcleos em um mesmo chip com até alguns bilhões de transistores, sendo que, para atender às pressões do mercado e amortizar os custos de projeto entre vários sistemas, é importante que todos os seus componentes sejam reutilizáveis, incluindo a arquitetura de comunicação. Das arquiteturas utilizadas atualmente, o barramento é a única que oferece reusabilidade. Porém, o seu desempenho em comunicação e o seu consumo de energia degradam com o crescimento do sistema. Para atender aos requisitos dos futuros sistemas integrados, uma nova alternativa de arquitetura de comunicação tem sido proposta na comunidade acadêmica. Essa arquitetura, denominada rede-em-chip, baseia-se nos conceitos utilizados nas redes de interconexão para computadores paralelos. Esta tese se situa nesse contexto e apresenta uma arquitetura de rede-em-chip e um conjunto de modelos para a avaliação de área e desempenho de arquiteturas de comunicação para sistemas integrados. A arquitetura apresentada é denominada SoCIN (System-on-Chip Interconnection Network) e apresenta como diferencial o fato de poder ser dimensionada de modo a atender a requisitos de custo e desempenho da aplicação alvo. Os modelos desenvolvidos permitem a estimativa em alto nível da área em silício e do desempenho de arquiteturas de comunicação do tipo barramento e rede-em-chip. São apresentados resultados que demonstram a efetividade das redes-em-chip e indicam as condições que definem a aplicabilidade das mesmas.
|
89 |
Modelos para o mapeamento de aplicações em infra-estruturas de comunicação intrachipMarcon, Cesar Augusto Missio January 2005 (has links)
O projeto de sistemas intrachip (SoCs) é uma atividade de alto grau de complexidade, dados a dimensão de SoCs, na ordem do bilhão de transistores, os requisitos de tempo de desenvolvimento e de consumo de energia, entre outros fatores. A forma de dominar a complexidade de projeto de SoCs inclui dividir a funcionalidade do sistema em módulos de menor complexidade, denominados de núcleos de propriedade intelectual (núcleos IP), interligados por uma infra-estrutura de comunicação. Enquanto núcleos IP podem ser reusados de outros projetos ou adquiridos de terceiros, a infra-estrutura de comunicação deve sempre ser desenvolvida de forma personalizada para cada SoC. O presente trabalho volta-se para o projeto de infraestruturas de comunicação eficientes. Questões importantes neste contexto são a eficiência da comunicação, refletida e.g. em medidas de vazão e latência, a redução de área de silício para implementar a comunicação, e a redução da energia consumida na comunicação. Estas questões dependem da escolha da infra-estrutura de comunicação. Barramentos são as infra-estruturas mais usadas nas comunicações intrachip, mas têm sido consideradas como pouco adequadas para servir a necessidade de comunicação de SoCs futuros. Redes intrachip vêm emergindo como um possível melhor candidato. Nesta infra-estrutura de comunicação, um problema a ser resolvido é o posicionamento relativo de núcleos IP dentro da rede, visando otimizar desempenho e reduzir o consumo de energia, no que se denomina aqui problema de mapeamento. Dada a complexidade deste problema, considera-se fundamental dispor de modelos para capturar as características da infra-estrutura de comunicação, bem como da aplicação que a emprega A principal contribuição deste trabalho é propor e avaliar um conjunto de modelos de computação voltados para a solução do problema de mapeamento de núcleos de propriedade intelectual sobre uma infra-estrutura de comunicação. Três modelos são propostos (CDM, CDCM e ECWM) e comparados, entre si e com três outros disponíveis na literatura (CWM, CTM e ACPM). Embora os modelos sejam genéricos, os estudos de caso restringem-se aqui a infra-estruturas de comunicação do tipo rede intrachip. Dada a diversidade de modelos de mapeamento, propõe-se uma segunda contribuição, o metamodelo Quantidade, Ordem, Dependência (QOD), que relaciona modelos de mapeamento usando os critérios expressos na denominação QOD. Considerando o alto grau de abstração dos modelos empregados, julga-se necessário prover uma conexão com níveis inferiores da hierarquia de projeto. Neste sentido, uma terceira contribuição original do presente trabalho é a proposta de modelos de consumo de energia e tempo de comunicação para redes intrachip. Visando demonstrar a validade de todos os modelos propostos, foram desenvolvidos métodos de uso destes na solução do problema de mapeamento, o que constitui uma quarta contribuição. Estes métodos incluem algoritmos de mapeamento, estimativas de tempo de execução, consumo de energia e caminhos críticos em infra-estruturas de comunicação. Como quinta contribuição, propõe-se o framework CAFES, que integra os métodos desenvolvidos e os modelos de mapeamento em algoritmos computacionais. Uma última contribuição do presente trabalho é um método habilitando a estimativa de consumo de energia para infra-estruturas de comunicação e sua implementação como uma ferramenta computacional.
|
90 |
The development of a hardware abstraction layer generator for system-on-chip functional verificationSampaio Lins, Tiago 31 January 2009 (has links)
Made available in DSpace on 2014-06-12T15:58:20Z (GMT). No. of bitstreams: 2
arquivo3518_1.pdf: 1045256 bytes, checksum: e867a269b3f60e64d58cb765a97aec17 (MD5)
license.txt: 1748 bytes, checksum: 8a4605be74aa9ea9d79846c1fba20a33 (MD5)
Previous issue date: 2009 / Conselho Nacional de Desenvolvimento Científico e Tecnológico / Atualmente o processo de verificação funcional de System-on-Chip (SoC) complexos
envolve centenas de engenheiros ao longo do projeto de um circuito integrado. Tal esforço
visa garantir um nível de confiança satisfatório antes do mesmo ser enviado para o tapeout .
Estudos recentes revelaram que a etapa de verificação funcional constitui de 70% a
80% do esforço total do projeto sendo a etapa mais onerosa em termos de custo e tempo
dentro do fluxo de desenvolvimento de um SoC.
Devido às restrições de time-to-market e a atual complexidade dos SoCs, as equipes
de verificação funcional não usufruem do tempo necessário para obter o conhecimento do
sistema a ser verificado em profundidade. Contudo eles precisam garantir que todos os
módulos de propriedades intelectual (IP) presentes em um SoC continuam funcionando de
acordo com a sua especificação após integrados.
Na verificação funcional existem várias técnicas de como proceder com a mesma.
Atualmente, a mais utilizada é a verificação com auxílio de um processador processor
driven tests . Dado que nesses complexos sistemas sempre há um processador o qual é
responsável pelo controle do sistema. Uma forma de verificar se todos os IPs dentro da
hierarquia do SoC funcionam de acordo com suas especificações é executar aplicações em
software neste processador e verificar a saída do sistema. A idéia consiste em estimular um
IP através de rotinas em software comparando o resultado gerado com o esperado. Nesta
abordagem, um dos problemas existente consiste na escrita dos casos de testes. Uma vez
que nesses sistemas encontramos uma grande quantidade de IPs, e estando os mesmos
dispostos em diferentes níveis de hierarquia de barramentos dentro do SoC, acessar suas
interfaces e seus componentes internos utilizando uma linguagem estruturada, como C, é
bastante complexo.
Os IPs são acessados via dispositivo de entrada e saída baseado em memória, ou seja,
cada IP possui um ou mais endereços e a decodificação desses endereços é feita pelos
barramentos existentes no sistema. Para o processador é transparente se uma rotina de
escrita ou leitura vai ser processada por um bloco de memória de fato ou por um IP com
um conjunto de registradores internos. Desta forma, quando o engenheiro de verificação
está escrevendo os casos de testes ele precisa lidar com manipulação de endereços, macros
e/ou estruturas, defines, ou ainda, partir para uma linguagem de montagem.No processo de escrita dos casos de testes, as rotinas que implementam o acesso aos
registradores e seus campos consistem em uma atividade fundamental para permitir o teste
de funcionalidade do sistema. A essas rotinas encarregadas de ler e escrever valores nos
registradores internos do IPs de um SoC chamamos de camada de abstração de hardware
Hardware Abstraction Layer (HAL).
A STMicroelectronics, uma das lideres mundial na industria de semicondutores,
através do seu grupo de verificação funcional decidiu desenvolver uma metodologia para
verificação funcional de SoC que fizesse o uso de ferramentas específicas para automatizar
parte das atividades relacionadas a esta fase do projeto de um circuito integrado. Uma
necessidade do time de verificação funcional, no contexto desta metodologia, consistia em
possuir uma ferramenta capaz de automatizar o processo de geração dessa HAL, uma vez
que os engenheiros de verificação tinham bastante trabalho na escrita dessas rotinas e em
muitos casos elas eram responsáveis por falhas no processo de verificação funcional. O
interesse do time era permitir que o engenheiro focasse seu trabalho no teste de
funcionalidade do SoC não despendendo seu tempo na implementação das rotinas de
acesso aos registradores dos IPs.
Este trabalho foi desenvolvido em parceira com a STMicroelectronics visando
estudar e propor uma ferramenta capaz de atender tal necessidade. O trabalho propõe a
implementação de uma ferramenta capaz de gerar a camada de abstração de hardware.
A ferramenta proposta, HAL generator , é um dos instrumentos que suportam a
automação de parte do processo de verificação funcional. Esta ferramenta é responsável
pela geração automática de uma API que permite a manipulação dos valores dos
registradores. A manipulação dos valores pode ser feita em todo registrador ou em subcampos
do mesmo através de uma interface em um alto nível de abstração. Os engenheiros
de verificação utilizam as funções geradas pelo HAL generator para ler e escrever
valores nos registradores do SoC a ser verificado.
A ferramenta é capaz de gerar tanto a declaração como definição das funções. As
funções são geradas na linguagem de programação C e funcionam como uma API para ler
e escrever valores nos registradores. Com o apoio dessas funções geradas pela ferramenta,
a codificação dos casos de testes fica mais fácil e produtiva, permitindo ainda a
reutilização dos casos de testes em outros sistemas dado que a API gerada pelo HAL
generator segue um padrão na geração das funções o qual garante que um caso de testepara um mesmo IP possa ser executado em contextos diferentes, bastando apenas executar
o HAL generator para cada cenário
|
Page generated in 0.1466 seconds