Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Motorola 68030

7 views
Skip to first unread message

Paul Mageau

unread,
Oct 8, 1986, 6:34:29 PM10/8/86
to

>>I'm a little disturbed by the reports of the new 68030's on-chip
>cache for data accesses. I'm concerned about accesses to I/O devices,
>which are (by necessity) memory-mapped in 68xxx machines.
>
>Problem #1: if the chip decides to cache the value read from an
>I/O device status register, subsequent reads will not produce the
>current contents of that register.

There is a cache inhibit bit in page table that in turn is saved
in the on-chip MMU's address translation cache when that page is
resident in main memory(i.e the page desciptor is marked valid).
If the 68030 detects that the reference being made is unencachable,
it will force a cache miss which will in turn force
the processor to get the data from the actual control register, bypassing
and not allocating in the cache.

In general, you shouldn't save dymanic machine state(i.e information that
may change without the cache's knowledge) in the data cache. This does
not only apply to control/status registers, but also any physical bus
transaction(i.e DMA) without flushing the cache.

For example, suppose you have a page in memory, marked cachable,
that you use to DMA disk block A into. Then suppose the processor
accesses this data for whatever reason, which will put it in the
cache. Then the program decides to DMA a new disk block into that
same physical page. Since the CPU/MMU is not monitoring physical
bus traffic it is unaware of this activity. Now, the processes
accesses this page, hoping to get the new data, but since the
cache wasn't invalidated upon the physical bus entry, it gets the
old data.

The above problem stems from two problems. First, the 68030 does
not monitor phys. bus activity. Secondly, the data and instruction caches
are VIRTUAL CACHES, so even if the 68030 did monitor the PHYSICAL bus activity
it couldn't invalidate any entries since the cache tag contains
only a virtual address.


Paul Mageau

0 new messages