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++
12603 Discussions

Nios AvalonMM clock crossing bridge writes only 8 bits

Altera_Forum
Honored Contributor II
1,241 Views

Hi, 

 

I have a Nios II with the data master port (32 bit) connected to a Avalon-MM Clock Crossing Bridge to the CRA port of the PCIe core (in a Cyclone V), in Qsys. 

 

When I'm looking at the buses in signals tap, I can see the Nios generating the writes into the bridge, but only 8 bits seems to be transferred out of the bridge into the other clock domain. I have the parameters of the bridge set with a "Data Width" of 32, "Symbol Width" of 8, and the address units set as "symbols". But all I seem to be able to write across the bus is the most significant byte, but this is copied across all 32 bits. 

For example, if I write 0x12345678 from the Nios, the bridge will output 0x12121212 !! 

(I perform the writes by by using the memory window in the Eclipse debugger, if that makes any difference !!) 

 

I've obviously got something configured incorrectly in Qsys, but, i can't find what it is ! :oops:
0 Kudos
2 Replies
Altera_Forum
Honored Contributor II
367 Views

That might be doing four separate 1-byte transfers and you slave isn't looking at the byte enables.

0 Kudos
Altera_Forum
Honored Contributor II
367 Views

Ah, yes. It seems that the IDE (Elcipse) doesn't generate a full 32 bit write on the Avalon bus, but generates 4 writes for each byte using the byte enables, when you manually change a value in the memory window. 

Thanks !
0 Kudos
Reply