Path: utzoo!utgpu!attcan!uunet!munnari!otc!metro!basser!natmlab!dmsadel!augean!idall From: idall@augean.OZ (Ian Dall) Newsgroups: comp.arch Subject: Re: Dedicated Processors (was Sw vs. Hw BitBlit (CharBLT)) Message-ID: <374@augean.OZ> Date: 16 Aug 88 04:40:35 GMT References: <399@ma.diab.se> <76700044@p.cs.uiuc.edu> <1843@gofast.camcon.co.uk> <418@ma.diab.se> Reply-To: idall@augean.OZ (Ian Dall) Organization: Engineering Faculty, University of Adelaide, Australia Lines: 48 There are two guite different senses in which one can have a dedicated processor. A processor can be dedicated (specialised would be a better word) by its architecture or it can be dedicated in its function. There is nothing stopping one implimenting a functionally dedicated processor using a PU (the C has been dropped!) with a general purpose architecture if that is more cost effective. If all else was equal it would probably be better to use general purpose PUs in a multi CPU configuration than to have one CPU with dedicated PUs dedicated to other functions. However, all else is rarely equal! A multi CPU system is seriously complicated by the problems of avoiding a memory access bottleneck. Functionally dedicated PUs and a single CPU allows for a much cleaner design than a multi CPU system. In the former case, both the hardware and the software are more likely to work! To take an extreme case would you REALLY want to do without the micro in an ordinary dumb terminal and have the CPU do its work? Of course not! The reason it makes sense to put a dedicated micro in a terminal has little to do with making the best use of the total processing power of the total system and a lot to do with minimising the cost of communication. It is cheap and convenient to partition the system into chunks with a relatively slow (RS232) link between them. Whether that makes sense for graphics is another matter. I suspect it depends on your work load. If your programs need to manipulate bit maps directly then you probably want a wide bandwidth between your CPU and the graphics memory (and maybe you might as well use multiple CPUs). But if your programs can describe its display in relatively high level graphics objects, such as lines, polygons etc. etc. Then it makes sense to partition your system with a dedicated graphics processor and a CPU communicating via a relatively slow communication link like ethernet. I think that most programs in the first category should be rewritten to fit into the second category. Whether you make the dedicated processor have a special architecture or not is a matter of economics and performance (isn't everything?). If there is only ever going to be a small market for the dedicated processor then you might well use an off the shelf general purpose micro. In the case of the graphics processor, however, the market seems enormous and well worth developing a specialised architecture for (and TI, NS and Intel seem to agree!). -- Ian Dall "In any argument there will be people on your side who you wish were on the other side." idall@augean.oz