Nios® V/II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® V/II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++
12590 Discussions

Byteenable is always 1111 when reading through DMA

Altera_Forum
Honored Contributor II
970 Views

Hello, 

 

The system includes a 32 bit Avalon-Slave which needs the byteenable for the correct function. A DMA is reading some data from the slave. Regardless of the defined DMA data width (ALTERA_AVALON_DMA_CONTROL_BYTE_MSK, ALTERA_AVALON_DMA_CONTROL_HW_MSK, ALTERA_AVALON_DMA_CONTROL_WORD_MSK) byteenable is always “1111” during a read cycle. The value of byteenable is correct when writing via DMA or when using IORD_8DIRECT, IORD_16DIRECT, IORD_32DIRECT. Is it possible to force the DMA to use the correct byteenable value? 

 

At page 50 of mnl_avalon_bus.pdf it is mentioned that a master read transfer does not use byteenable. I think that this is the answer of the above problem. But now I wonder why this was implemented in this way. 

 

 

Regards, 

niosIIuser
0 Kudos
0 Replies
Reply