Desenvolvimento de um I-IP para o monitoramento da atividade do sistema operacional em processadores multin?cleos

Made available in DSpace on 2015-04-14T13:56:31Z (GMT). No. of bitstreams: 1 459325.pdf: 2898170 bytes, checksum: 16df18a4b13e444ddaa394a95eaebeae (MD5) Previous issue date: 2014-03-21 === The use of Real-Time Operating System (RTOS) became an attractive solution to design safety-critical real-tim...

Full description

Bibliographic Details
Main Author: Oliveira, Chr?stofer Caetano de
Other Authors: Vargas, Fabian Luis
Format: Others
Language:Portuguese
Published: Pontif?cia Universidade Cat?lica do Rio Grande do Sul 2015
Subjects:
Online Access:http://tede2.pucrs.br/tede2/handle/tede/3064
Description
Summary:Made available in DSpace on 2015-04-14T13:56:31Z (GMT). No. of bitstreams: 1 459325.pdf: 2898170 bytes, checksum: 16df18a4b13e444ddaa394a95eaebeae (MD5) Previous issue date: 2014-03-21 === The use of Real-Time Operating System (RTOS) became an attractive solution to design safety-critical real-time embedded systems. At the same time, we enthusiasti-cally observe the widespread use of multicore processors in an endless list of our daily applications. It is also a common agreement the increasing market pressure to reduce power consumption under which these embedded, portable systems have to operate. As the major consequence, these systems are becoming more and more sensitive to transi-ent faults originated from a large spectrum of noisy sources such as conducted and radi-ated Electromagnetic Interference (EMI) and ionizing radiation (single-event effect: SEE and total-ionizing dose: TID). Therefore, the system s reliability degrades. In this work, we discuss the development and validation of an Infrastructure-Intellectual Prop-erty (I-IP) able to monitor the RTOS activity in a multicore processor system-on-chip. The final goal is to detect faults that corrupt the task scheduling process in embedded systems based on preemptive RTOS. Examples of such faults could be those that pre-vent the processor from attending an interruption of higher priority, tasks that are strict-ly allocated to run on a given core, but are running on another one, or even the execu-tion of low-priority tasks that are passed over high-priority ones in the ready-task list maintained on-the-fly by the RTOS. This I-IP, namely RTOS-Watchdog, was described in VHDL and is connected to each of the processor CPU-Addresses busses. The RTOS Watchdog has a parameterizable interface to easily fit any processor bus. A case-study based on a multicore processor running different test programs under the control of a typical preemptive RTOS was implemented. The case-study was prototyped in a Xilinx Virtex4 FPGA mounted on a dedicated platform (board plus con-trol software) fully developed at the Computing Signals & Systems Group (SiSC) [1] of the Catholic University (PUCRS). For validation, the whole system was exposed to combined effects of EMI and TID. Such experiments were performed in several steps, part of them carried out at PUCRS, Brazil, and part at the Instituto Nacional de Tecnolog?a Industrial (INTI) and Centro At?mico, both located in the city of Buenos Aires, Argentina. The obtained results demonstrate that the proposed approach provides higher fault coverage and reduced fault latency when compared to the native fault detec-tion mechanisms embedded in the kernel of the RTOS. === O uso de sistemas operacionais de tempo real (Real-Time Operating Systems, RTOS), tornou-se uma solu??o atrativa para o projeto de sistemas embarcados cr?ticos de tempo real. Ao mesmo tempo, observamos com entusiasmo o amplo uso de proces-sadores multicores em uma lista intermin?vel de nossas aplica??es di?rias. ? tamb?m um acordo comum a crescente press?o do mercado para reduzir o consumo de energia em que estes sistemas port?teis embarcados necessitam para operar. A principal conse-qu?ncia ? que estes sistemas est?o se tornando cada vez mais suscet?veis ? falhas transi-entes originadas por um amplo espectro de fontes de ru?dos como Interfer?ncia Eletro-magn?tica (Electromagnetic Interference, EMI) conduzida e irradiada e radia??o ioni-zante (single-event transient: SET e total-ionizing dose: TID). Portanto, a confiabilidade destes sistemas ? degradada. Nesta disserta??o, discute-se o desenvolvimento e valida-??o de um I-IP (Infrastructure-Intellectual Property) capaz de monitorar a atividade do RTOS em um processador multicore. O objetivo final ? detectar falhas que corrompem o processo de escalonamento de tarefas em sistema sistemas embarcados baseados em RTOS preemptivos. Como exemplo destas falhas podem ser aquelas que impedem o processador de atender uma interrup??o de alta prioridade, tarefas alocadas para serem executadas por um determinado n?cleo, mas que s?o executadas por outro n?cleo, ou at? a execu??o de tarefas de baixa prioridade enquanto houver tarefas de alta prioridade na lista de tarefas prontas atualizada dinamicamente pelo RTOS. Este I-IP, chamado RTOS Watchdog, foi descrito em VHDL e ? conectado ao Barramento de Endere?os da CPU em cada n?cleo do processador. O RTOS Watchdog possui uma interface parame-triz?vel de modo a facilitar a adapta??o a qualquer processador. Um estudo de caso baseado em um processador multicore executando diferen-tes benchmarks sob o controle de um RTOS preemptivo t?pico foi desenvolvido. O es-tudo de caso foi prototipado em uma FPGA Xilinx Virtex4 montada em uma plataforma dedicada (placa mais software de controle) totalmente desenvolvida no Grupo Compu-ting Signals & Systems (SiSC) [1] da Pontif?cia Universidade Cat?lica do Rio Grande do Sul (PUCRS). Para a valida??o, todo o sistema foi exposto aos efeitos combinados de EMI e TID. Estes experimentos foram realizados em diversos passos, parte deles foram realizados na PUCRS, Brasil e parte no Instituto Nacional de Tecnologia Industrial (INTI) e Centro At?mico, ambos na cidade de Buenos Aires, Argentina. Os resultados demonstram que a abordagem proposta fornece uma maior cobertura de falhas e lat?ncia de falhas reduzida quando comparados aos mecanismos de detec??o de falhas nativos embarcados no kernel do RTOS.