../../_images/cdu.png

OTM4 - Detecção de malha inativa a partir de ramo de saída (backward)

Blocos do tipo SAIDA são blocos terminadores cuja função reside, principalmente, em manter uma estrutura de blocos, sem participação nas saídas efetivas do controle (blocos EXPORT), mas sem requerer a remoção dessas malhas que não estão sendo utilizadas. Se esses blocos são irrelevantes para a simulação, os blocos que conectam à sua entrada também o devem ser Ramo de Saída.

O algoritmo de código OTM4 tem por objetivo detectar, a partir dos sinais de SAIDA, malhas que podem ser desabilitadas. Para isto, o CDU é varrido em sentido backward, marcando os blocos como certamente inativos se e somente se todos os blocos conectados a sua saída (saída compartilhada) forem certamente inativos também. O algoritmo OTM4, portanto, possui a mesma lógica de varredura que da etapa backward do algoritmo OTM3. Assim, os seguintes critérios de parada para uma varredura em backward podem ser definidos:

Exemplo

A Fig. 92 ilustra um trecho do CDU em que é possível observar a inatividade sendo determinada a partir da SAIDA em três ocasiões.

../../_images/otm4.png

Fig. 92 Análise do algoritmo OTM4 num excerto de CDU

A partir do bloco (8), a busca consegue alcançar com sucesso um bloco terminador (6), desabilitando todos os blocos pelo caminho. A partir dos blocos (4) e (15), contudo, blocos com saída compartilhada a bloco Potencialmente Ativo (14); este bloco está conectado ao bloco (54), que não teve sua inatividade observada por este algoritmo.

Nota

As conexões em vermelho representam aquelas conexões que são certamente inativas, as em preto são potencialmente ativas.