Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!wuarchive!uunet!mcsun!ukc!inmos!brac!davidb From: davidb@brac.inmos.co.uk (David Boreham) Newsgroups: comp.arch Subject: Re: Endianess again Message-ID: <16077@ganymede.inmos.co.uk> Date: 16 May 91 10:41:46 GMT References: Sender: news@inmos.co.uk Reply-To: davidb@inmos.co.uk (David Boreham) Organization: none Lines: 31 In article hgw@RHT32.PCS.COM (h.-g. willers) writes: >Endianess again! > >We are considering to build a VME-based computer board using a >little endian processor. Is there any reason to swap bytes >and shorts going from and to the (big endian) VME, or are things just more >easy when we do not swap anything? Interesting question ! Since the endian-swap depends upon the data (you would do it for byte data but not for 32-bit integers), the swap needs to be configurable. Also for VME there are about 12 potentially useful different swap variations---caused by the mixture of 8,16 and 32-bit datapaths to SLAVEs interworking with a 32-bit RISC. What we do is put a big cross-point switch between the CPU and the VMEbus. This can do pretty much any re-ordering of the data and can hold up to 8 different swap functions on-line at any time. We drive the swap function selection from a look-up RAM which is in turn hung off the CPU address bus. This gives you the potential to apply any mangling of the databus you like, and up to 8 different kinds, configured to correspond to various address regions in the CPU address space. Probably overkill---but there's a Texas chip which does all this for about $50. David Boreham, INMOS Limited | mail(uk): davidb@inmos.co.uk or ukc!inmos!davidb Bristol, England | (us): uunet!inmos.com!davidb +44 454 616616 ex 547 | Internet: davidb@inmos.com