On Sun, 05 Dec 1999, you wrote:
>
> > The question: Why doesn't this work... it seem so straight forward...
> 
> I'm not sure about the code in question, but the basic assumptions you're 
> making about PCI's behaviour are flawed.  To achieve the goal you're 
> trying to, you need to reduce the value of the PCI bus latency timer for 
> the peripheral(s) that you're hoping to interrupt.
I don't want to interrupt the devices.. which would require the 
transaction to reoccur...  I do agree(from the book PCI System Architecture), 
the Master Latency Timer should be decreased, but I still need the DMA
transactions to complete sooner from the time GNT# is removed by the 
arbiter.

> Breaking up the DMA transactions leaves you vulnerable to the PCI 
> peripheral noticing that the two segments are contiguous and coalescing 
> them again into a single master write. 
I don't think the NIC will do this... However it it possible... From 3com docs,
the 3c509bs don't... But I could probably reorder the dma requests to force
seperate transactions... maybe, maybe not.

> Also, you don't want the (high) 
> overhead of forcing a re-arbitration all the time, rather you want to 
> guarantee the worst-case cycle time involved in polling the peripheral.  

> Again, to achieve this, you want to look at how the PCI bus latency timer 
> works and use it instead.
I understand how it is working, but the I still beleive smaller DMA
transactions, while somewhat inefficient, will shorten the latency to something
reasonable.

 > You will always get the best performance out of PCI by avoiding  
> _anything_ that involves arbitrating for the bus.  PCI bus transactions  
> are reasonably expensive to start.  8( > 
I agree.  If I knew I could avoid handshaking the device, I would skip it...
It takes 20+% of the forwarding time..

I have another question:  Is there a way to get the compiler to do a non
blocking mem read ? load to a hardwired zeroed register? 

thanks a bunch,
kurt
> 
> 
> 
> -- 
> \\ Give a man a fish, and you feed him for a day. \\  Mike Smith
> \\ Tell him he should learn how to fish himself,  \\  [EMAIL PROTECTED]
> \\ and he'll hate you for a lifetime.             \\  [EMAIL PROTECTED]
-- 

uname -a > Linux wookie.vandelden.com 2.2.13 #1 <


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message

Reply via email to