Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
16 years ago

IORD_ALTERA_AVALON_PIO_DATA to slow?

Hi,

I'm trying to capture samples from an A/D Converter and streaming them onto a PC via an ethernet connection. I've extended the triple speed ethernet design example from the Nios II v9.1 installation directory.

I'm using a PIO component in my SOPC System where the ADC data is written on the data register of the component. From there I'm reading it in a while loop in my Nios software using:

while(tx_wr_pos < &tx_buf[SSS_TX_BUF_SIZE-8])

{

tx_wr_pos += sprintf(tx_wr_pos,"%d\n\r", IORD_ALTERA_AVALON_PIO_DATA(AD_DATA_BASE));

}

send(conn.fd, tx_buf, tx_wr_pos - tx_buf, 0);

However, there seems to be aliasing occuring whenever the ADC signal gets faster then a few 100Hz.

How many clock cycles does the IORD function need?

My Nios II system is set to the maximum 100 ticks/s.

Is my software to slow for just reading the PIO in a while loop?

27 Replies