Dissertação
Projeto e implementação da distribuição de um simulador multinível
Design and implementation of the distribution of a multi-level simulator
Autor
Silva, Luis Fernando da
Resumen
O uso de ferramentas de simulação para validar projetos de sistemas digitais é uma prática comum, devido às vantagens que estas trazem ao desenvolvimento destes sistemas, tais como: custo, segurança, velocidade e acuracidade. Porém, a simulação seqüencial de alguns sistemas pode levar várias horas ou até mesmo dias, fazendo desta maneira surgir a necessidade de técnicas para acelerar tal procedimento. Uma solução encontrada para aumentar a velocidade de simulação pode estar no uso de técnicas de sistemas distribuídos, já que muitas vezes o próprio sistema real tem embutido em si um certo paralelismo, o que facilita os procedimentos de distribuição. Ao se tratar da simulação de sistemas distribuídos logo surge um dos grandes problemas inerentes a estes, o controle global do tempo, fazendo com que a sincronização entre os processos seja bastante complicada. Neste trabalho são estudados dois paradigmas de sincronização, o otimista e o conservativo. Tendo como base estes paradigmas, formularam-se duas técnicas para solucionar o problema de sincronização, no contexto da simulação multinível de sistemas digitais. Nos estudos realizados, utilizou-se como plataforma a API WinSock para Windows a fim de proporcionar a comunicação entre processos. Ao final é feita uma análise comparativa das versões desenvolvidas, as quais fizeram uso das técnicas de sincronização acima mencionadas. The use of simulation tools to validate the design of digital systems is a common practice, due to the benefits these tools bring to the development of those systems: cost, security, velocity, and accuracy. However, the sequential simulation of some systems may take hours or even days, thus creating the need of techniques for speeding up this procedure. A solution for increasing the simulation speed may be the use of techniques based on distributed systems, since very often the real system has an implicit parallelism, which makes easier the aplication of distribution procedures. When dealing with the simulation of distributed systems, one of the big problems that arise is the global control of simulation time, which makes the synchronization among processes very complex. In this work two synchronization paradigms are studied: the optimist and the conservative ones. Based on these paradigms, two techniques for solving the problem of synchronization in the context of multi-level simulation of digital systems have been developed. In these studies, the API WinSock for Windows has been used for supporting the communication between processes. A comparative analysis of the versions we developed, that use the above mentioned synchronization techniques, is also presented.