linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: "Richard Hendricks" <ra6353@email.sps.mot.com>
To: Geir Frode Raanes <geirfrs@invalid.ed.ntnu.no>,
	linuxppc-embedded@lists.linuxppc.org
Subject: Re: What is the catch with IDMA on MPC860?
Date: Wed, 22 Mar 2000 10:49:54 -0600	[thread overview]
Message-ID: <38D8F9B2.E772CE9@email.sps.mot.com> (raw)
In-Reply-To: Pine.BSF.4.10.10003200951040.10686-100000@invalid.ed.ntnu.no


Geir Frode Raanes wrote:
>
> On Fri, 17 Mar 2000, Richard Hendricks wrote:
>
> > Geir Frode Raanes wrote:
> > >
> > > Possibely. But where does the manual say that the
> > > performance stinks? It should be documented somewhere.
> >
> > Of course!  It's documented in the Serial Communications
> > Performance chapter.  Something like 3-4 pages at the very
> > end.  At 25 MHz (the values scale linearly with frequency,
> > more or less), and with no other loading on the CPM,
> > Memory to Memory burst IDMA transactions top out at 10.4 MB/sec,
> > or, at a more reasonable speed like 66 MHz, 27.45 MB/sec.
>
> Ah. RTFM. The paper version - Appendix B - that is.
> Can still not find it in the PDF version. Funny.
> Thank you anyway. Those where the timing diagrams I
> were looking for.

Ah, I am support for the MPC823/MPC823, so everything is
tinged with MPC82x colored glasses.  I don't happen to have
an MPC860 manual handy anymore.

> I am just moving up from the world
> of microcontrollers and FPGA to microprocessors.
> Can't say I am all that thrilled about IF-THEN-ELSE
> soft timing datasheets. But I'll manage.

Such is life in the high end world ;)

> And 27.45 MBytes per sec gives me a reasonable headroom
> from the 20 MBytes per second requirement of the grabber,
> and still allow me to leave interrupts enabeled.
> And yes, it is in fact a CCD camera grabber without
> much local buffering.

Just be sure you don't overtax your CPM.  20/27.45 = 73%,
but if you start adding in UARTs, etc, you might be getting
close to the edge.

> What I was really asking was what the "inefficient"
> label on IDMA was all about. More specifically, if that
> meant that IDMA wasted bus clock cycles - i.e. hogging
> the bus while setting up the transfer or requiring
> wait states irrespectible of the source/target speed.
> Considering the timing diagrams in Appendix B and given
> the Motorola "will then perform a fast back-to-back
> transfer" statement this does not seem to be the case.

Oh yes, you're right.  The CPM does all the staging internally,
and it doesn't need to "hold" the bus for the cycles while
it is packing/unpacking data.  It only takes the bus
when it is actively transferring data.

> I can live with the fact that IDMA can not utilize the
> bus 100% of the time as long as it __relinquish the bus__
> at all times it does not perform __full speed__ data
> movements. Actually I prefer it does just that.

And that's just what it does.  Sorry about the misunderstanding.

> The other use of these IDMA channels is for soft
> PCI interface. There is specified a limit of 8 PCI
> clocks on target latency. That rules out any interrupt
> based interface handling. But IDMA to configuration
> space and memory space respectively in combination
> with an interrupt migth do the trick.
>
> > > Now, the question is - what controls the /TA line?
> >
> > Er, you're doing DMA to/from a memory.  The timing of that
> > memory controls /TA.  If you're using your DRAM with one
> > of the UPMs, and you're targeting that DRAM with IDMA, it
> > uses the UPM to control the DRAM. (For a flyby-mode transaction).
>
> I am aware of that. What I was really asking was what is the
> upper boundary on the timing. Like for instance the timing
> of the TMP68303 microcontroller from Toshiba wich stated that
> the _slower_ of the internally generated /DTACK and externally
> applied is used for DMA transfers.

The timing is controlled by either the UPM or GPCM currently in
control of the transaction.  If you want finer scale timings,
then you can check out the timing spreadsheets (for the MPC821/MPC823
anyways).

> --
>   ******************************************************
>   Never ever underestimate the power of human stupidity.
>   -Robert Anson Heinlein
>
>                 GeirFRS@invalid.and.so.forth
>   ******************************************************

** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/

  reply	other threads:[~2000-03-22 16:49 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <38D2530F.3417D5BA@email.sps.mot.com>
2000-03-17 16:22 ` Best embedded PPC eval board for Linux Tom Shaver
2000-03-17 18:05   ` Jo-Ellen F. Mathews
2000-03-17 17:02 ` What is the catch with IDMA on MPC860? Geir Frode Raanes
2000-03-17 17:23   ` Alan Mimms
2000-03-17 17:50     ` Dan Malek
2000-03-17 21:20       ` Richard Hendricks
2000-03-17 21:46         ` Dan Malek
2000-03-17 21:11     ` Richard Hendricks
2000-03-17 21:35       ` Alan Mimms
2000-03-17 21:09   ` Richard Hendricks
2000-03-20 10:11     ` Geir Frode Raanes
2000-03-22 16:49       ` Richard Hendricks [this message]
2000-03-22 22:59         ` Noah Misch
2000-03-23  2:34           ` Graham Stoney
2000-03-23 13:30             ` Claude Robitaille
2000-03-23 22:49           ` Richard Hendricks
2000-03-17 12:18 Geir Frode Raanes

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=38D8F9B2.E772CE9@email.sps.mot.com \
    --to=ra6353@email.sps.mot.com \
    --cc=geirfrs@invalid.ed.ntnu.no \
    --cc=linuxppc-embedded@lists.linuxppc.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).