ID do artigo: 000073766 Tipo de conteúdo: Solução de problemas Última revisão: 14/09/2011

Desreferências de ponteiros para tipos voláteis

Ambiente

    Intel® Quartus® II Subscription Edition
    Interrupção
BUILT IN - ARTICLE INTRO SECOND COMPONENT

Problema crítico

Descrição

O compilador C2H trata as desreferências de ponteiros para um volátil digite como se eles alias todas as outras dereferências de ponteiro. Ponteiros que são qualificados com restrição são tratados da mesma maneira.

Os dois loops não podem ser ser agendado simultaneamente porque a qualificação volatile substitui o pragma __restrict__

Loops não simultâneos
volatile int * __restrict__ fifo_rd = FIFO_RD_BASE; volatile int * __restrict__ fifo_wr = FIFO_WR_BASE; for () { *fifo_wr = ....; } for () { ... = *fifo_rd; }
Resolução

Divida a função em solicitação de interrupção múltipla (IRQ) habilitada aceleradores que são lançados simultaneamente a partir do processador, e use buffers FIFO para se comunicar entre eles.

Produtos relacionados

Este artigo aplica-se a 1 produtos

Dispositivos programáveis Intel®

1

O conteúdo desta página é uma combinação de tradução humana e por computador do conteúdo original em inglês. Este conteúdo é fornecido para sua conveniência e apenas para informação geral, e não deve ser considerado completo ou exato. Se houver alguma contradição entre a versão em inglês desta página e a tradução, a versão em inglês governará e será a controle. Exibir a versão em inglês desta página.