D
Dirk Ziegelmeier
Guest
Hello Group,
I'm currently evaluating a Xilinx Microblaze system. One of the
must-have features is a fast memcopy. Therefore, I implemented a basic
system consisting of a Microblaze core (no caches, but program runs in
BlockRAM) and a SDRAM controller. Burst support of the SDRAM core is
enabled. Burst support of the microblaze core should work
out-of-the-box according to the manuals.
The system consists of:
- Microblaze 2.0 core
- OPB bus v20
- OPB SDRAM controller
Memcopy delivers unsatisfactory performance, an analysis shows that
the main reason is that the SDRAM controller does not perform burst
accesses to the RAM. The memcopy routine is quite optimal, it consists
of four consecutive read and four write instructions, so bursting
should work in theory.
Is there anything more I need to do to get bursts to work? I already
spent two days reading manuals and FAQs trying to identify the
problem, but no success.
TIA,
Dirk
I'm currently evaluating a Xilinx Microblaze system. One of the
must-have features is a fast memcopy. Therefore, I implemented a basic
system consisting of a Microblaze core (no caches, but program runs in
BlockRAM) and a SDRAM controller. Burst support of the SDRAM core is
enabled. Burst support of the microblaze core should work
out-of-the-box according to the manuals.
The system consists of:
- Microblaze 2.0 core
- OPB bus v20
- OPB SDRAM controller
Memcopy delivers unsatisfactory performance, an analysis shows that
the main reason is that the SDRAM controller does not perform burst
accesses to the RAM. The memcopy routine is quite optimal, it consists
of four consecutive read and four write instructions, so bursting
should work in theory.
Is there anything more I need to do to get bursts to work? I already
spent two days reading manuals and FAQs trying to identify the
problem, but no success.
TIA,
Dirk