Re: [OT] Re: writing a dailer in c for a 8051 based system

From: David Schwartz (davids_at_webmaster.com)
Date: 05/26/04


Date: Wed, 26 May 2004 10:06:29 -0700


"Dan Pop" <Dan.Pop@cern.ch> wrote in message
news:c926pr$k03$8@sunnews.cern.ch...
> In <pan.2004.05.26.09.52.12.812641@sig.now> August Derleth <see@sig.now>
> writes:

>>[1]A microchip designed to be used in an environment other than a PC,
>>server, router, or other obviously-computer environment.

> Many older hard disks found in PC's used an 8051 chip, so your definition
> is rather shaky. Furthermore, Intel had an 8052 chip with an embedded
> BASIC interpreter, that could be used as the core of a small computer.

    He's saying it's "*designed* to be used in an environment other than a
PC". The 8051 was designed to be embedded in a wide variety of devices, and
not primarily as the central processor of a general-purpose computer.

>>They typically
>>have a place to hardcode instructions (that is, onboard ROM space) and
>>might support odd word sizes to interface with specialty hardware.

> This is not the case of the general purpose ones, like the 8051, which
> are best described as single chip computers, containing a CPU, ROM, RAM
> and various external interfaces on a single chip.

    Huh? He said it had unboard ROM space and you said it contained "ROM ...
on a single chip". So how is it not the case?

> The word sizes are
> the vanilla ones, so that adding external ROM or RAM can be done using
> cheap, off the shelf, components (no point in having a cheap
> microcontroller if it needs expensive external chips).

    You may not be familiar with the 8051, but it's addressing modes were
quite unusual. (If you only programmed it in C, you might not have realized
just how odd it is.) As an example, how many bits do you think you need for
a general purpose pointer in an 8051? (Keep in mind it has code and data in
distinct address spaces.) And what about the external MOV instructions that
take an 8-bit address? Do you know where the other 8 bits of the address
comes from? (It's truly bizarre.)

>>Low
>>power consumption and extremely low cost-per-chip often counts for more
>>than clock speed.

> Low power consumption is often not an issue (no point in using a < 1 mW
> controller in a microwave oven)

    His claim was "often". And he didn't say it was the most important
thing, he said it counted more than clock speed. You aren't seriously going
to argue that clock speed is important in a microwave oven.

    So he said A is often more important than B and you came up with a case
where neither is particularly important. How do you think this refutes what
he said?

> but low cost per chip is an overriding
> concern, otherwise the designer would opt for a traditional microprocessor
> + ROM + RAM + I/O intefaces approach, which is often more comfortable to
> program on (the typical CPU in a microcontroller is less capable than an
> usual microprocessor, the program and the data often reside in different
> address spaces, and, for machine code compactness reasons, the program
> memory is often paged).

    Well that's the first thing you've said that's correct. Low cost is
quite often the most critical factor in a microcontroller. Though it's not
so much the per chip cost as the cost to implement an entire system. This is
why, for example, a microcontroller is more likely to contain an on-chip
clock generator than a general-purpose CPU is.

    DS



Relevant Pages

  • Re: [OT] Re: writing a dailer in c for a 8051 based system
    ... Intel had an 8052 chip with an embedded ... not primarily as the central processor of a general-purpose computer. ... > are best described as single chip computers, containing a CPU, ROM, RAM ... > microcontroller if it needs expensive external chips). ...
    (comp.lang.c)
  • Looking for CPU with FPGA
    ... I'm looking for a microcontroller that is capable of running CE and that is ... a combination between a CPU and some FPGA on a chip. ...
    (microsoft.public.windowsce.platbuilder)
  • Re: OT;W98 popularity
    ... Not USB 2, but I did do a full-speed USB device mostly from scratch ... (writing all the microcontroller routines to receive, ... FTDI chip, I suppose, if I use one. ... clocking the bus directly with the CPU. ...
    (sci.electronics.design)
  • Re: Programmer / Evaluation Board / Development Board
    ... I'll want is a piece of hardware I can use for programming the chip. ... development board for €10 through my college (which is about 15 US ... program and then putting it back in the circuit. ... program a microcontroller using a small USB-interface programmer, ...
    (comp.arch.embedded)
  • Re: Dead A7V333 (maybe) - how do I tell ?
    ... sink/fan off the CPU. ... cool the CPU chip with a few seconds ... Then apply power and see if you get any beeps. ... point - then hit the CPU with the freeze spray until it frosts over or (and ...
    (alt.comp.periphs.mainboard.asus)