Path: utzoo!attcan!uunet!lll-winken!lll-tis!ames!necntc!necis!smv From: smv@necis.UUCP (Steve Valentine) Newsgroups: comp.arch Subject: Re: Details on Moto 88200 CMMU Message-ID: <638@necis.UUCP> Date: 15 Jun 88 16:23:30 GMT References: <6396@cup.portal.com> <10067@tekecs.TEK.COM> Reply-To: smv@necis.UUCP (Steve Valentine) Organization: NEC Information Systems, Acton, MA Lines: 35 In article <10067@tekecs.TEK.COM> andrew@frip.gwd.tek.com (Andrew Klossner) writes: >Adding CMMUs creates some interesting problems. With more than one >CMMU on a memory port (instruction or data), you pretty much have to >use part of the memory address as a chip selector. (We use A12 and A13 >to select one of four CMMUs.) But this memory address is *virtual*, so >suddenly we have a (somewhat) virtual cache with aliasing problems. ... [ Deleted suggestions for how to avoid the problem by flushing or using separate free lists. ] > -=- Andrew Klossner (decvax!tektronix!tekecs!andrew) [UUCP] > (andrew%tekecs.tek.com@relay.cs.net) [ARPA] Why do you care about this aliasing? If you pull a page from the freelist, it is generally going to fall into one of two catagories: Page reclaim on a page fault, in which case it will go back to the same vaddr. -or- Fresh page to be zeroed or filled from swap or a.out. In this case you don't care about the former contents, as long as they don't linger. As long as only the new CMMU is now servicing the page, the old cached data shouldn't be hit. Am I missing something here? And now a new question: In a configuration with multiple CMMUs as described in the previous article, do you have to have separate page tables for each CMMU, or do they somehow know how to cooperate in searching a single table? (For a given region of a virtual address space that is.) Maintaining multiple page tables may be a problem if a process is permitted to migrate from one processor with say 4 CMMUs to one with only 2 or 1. -- Steve Valentine - smv@necis.nec.com NEC Information Systems 1300 Massachusetts Ave., Boxborough, MA 01719 This signature line is blank when you're not looking at it.