I am using MOD5270B. When I use command memmove(), the clock speed of address and data bus to access external device is about 600 ns.
Can I make it faster? Which core module has the highest speed for external interface?
speed of core module address and data bus
speed of core module address and data bus
Robert Lee
National Synchrotron Radiation Research Center, Taiwan
National Synchrotron Radiation Research Center, Taiwan
Re: speed of core module address and data bus
Hello, on the 5270 the bus speed is half the cpu core, which is 75MHz. That is the fastest bus.
Re: speed of core module address and data bus
The speed issue is likely the speed to copy to DRAM....
Several things can be done to speed this up...
1)Have the destination in SRAM not DRAM...
Are you reading one address over and over or a range of addresses?
What is the bus width of your transaction?
Best to write out 32 bit chunks.
If the source and destination can both be 32 bit things..
void* memcpy(void *out, const void *in, size_t n)
has an assembly language routine backing it up that speeds up DRAM access, by doing reads, then writes in blocks...
If the source cna't be a 32 bit blocks then look at how memcpy in uconsmcfa.s is written...
and emulate that ..
If you can provide exact details of your bus transactions I can help you optimize.
IE what hardware are you reading from.
Port width.
Read from or write to addresses(one or a range)
Size of total blocks...
etc...
Several things can be done to speed this up...
1)Have the destination in SRAM not DRAM...
Are you reading one address over and over or a range of addresses?
What is the bus width of your transaction?
Best to write out 32 bit chunks.
If the source and destination can both be 32 bit things..
void* memcpy(void *out, const void *in, size_t n)
has an assembly language routine backing it up that speeds up DRAM access, by doing reads, then writes in blocks...
If the source cna't be a 32 bit blocks then look at how memcpy in uconsmcfa.s is written...
and emulate that ..
If you can provide exact details of your bus transactions I can help you optimize.
IE what hardware are you reading from.
Port width.
Read from or write to addresses(one or a range)
Size of total blocks...
etc...