2004-11-25 07:32 PM
2003-01-27 09:05 AM
In the STPC Elite programming manual it says that ISA 16 bit bus cycles are 2.5 clocks long. This seems very low to me. In addition, I can't seem to be able to find how frequently ISA bus cycles are executed. On most single board computers I have used, I saw DMA read from peripheral cycles that are usually 6 or 7 clocks long with about 15 cycles in between them. This worked out to provide about 765 kBytes/sec throughput. I need to be able to transfer 1.7 MBytes/sec from a fast 16 bit peripheral over the ISA bus. Anyone have experience doing this with an STPC, preferably the STPC elite? Thanks in advance.
2003-01-30 12:15 AM
The maximum bandwidth that we have seen on the ISA bus was 1MByte/s second. If you need 1.7 MByte/s, I would suggest that you move to the PCI or alternatively you use the Elite in Local Bus mode.
This may be a more feasable option as it is close to the ISA architecture and may be simpler to implement.2003-01-30 05:40 AM
Thanks. Do you know the maximum transfer rate on it for an HCLK of 100 MHz? The timing diagrams for the local bus don't seem to indicate how long you wait after the cycle is complete to when another cycle starts, so I assume that they can be run back to back with no delay. Having very high throughput is required because we will be doing PIO and I don't want that my 1.7MBytes/sec too consume too many processor cycles.
My current calculations: From the timing diagrams for localbus IO reads, I see that the cycle takes 16T or 160mailto:ns@100MHz
. So I assume that if could use a REP INSW command and have 60 nsec SDRAM write cycles, then we should be able to do a read from local bus IO, write to SDRAM sequence in something like 160 ns + 60 ns = 220 ns. Does this seem reasonable?2003-07-17 08:31 PM
Hello moderator,
you said, that the maximum speed on ISA is 1,0 MByte/s. Are here ZWS an 16bit - Transfer (not 2x8bit !!!) used. Can you explain the calculation of this speed ? Thank you.2004-11-25 07:32 PM
IO access to 8bit isa slave = 5T
1T=PCICLK/4=8M IO Read Speed=125ns*5=625ns(8bit) transspeed=1s/625ns=1.6MByte Is it correct?