More Fun With 1 Chip Systems
Anonymous Coward writes "Axis, maker of the ETRAX system-on-chip, has just announced a multi-chip module that has the same pinout as their ETRAX SOC but which contains over 50 components. According to this article at linuxdevices.com, all you need to add is an external 20MHz crystal and power, to end up with a fully functional networked Linux system. It contains 8 megs sdram & 2 megs flash. Now you can really put Linux anywhere! The estimated price (when it hits production) to buy these little goodies is $75 (qty 1) down to $50 (qty 10K). "
You can build an on chip oscillator (this is done for virtually any modern RF circuit), however in order to make it slow enough to drive digital circuits you would need large valued passive components on board, these are expensive to implement as they will consume a large die area.
Concievably you could build a prescaler to handle the fast oscillator and scale it down to a managable speed but since a free running oscillator will have a rather imprecise speed, this prescaler must be designed very carefully.
The lack of a predictable clock will also be a detrimental for the end user as performance will vary rather wildly.
The use of an external timing source will enable you to stabilize and normalize the clock speed, which is exactly why you want a crystal.
Use of higher level timing sources like a heartbeat over ethernet is not apropriate as proper reception of such data really requires an accurate timing in the first place.
Generally reception of data without sunchronization is possible as long as the data is recieved much slower than the local clock. This way we can sample the data signal fast enough to make sense of it. I doubt such a scheme is appropriate for ethernet. (since the ethernet driver is on board you need to sample the ethernet signal directly which means you need a timing insensisitive way to transform the ethernet symbols to simple logic level signalling. I doubt this is a trivial task)
Is there any way to communicate without having an accurate clock?
Morse Code has no accurate clock, and works just fine. (I'm not joking or patronizing in pointing this out. Your question is a good one.)
A "latch" signal is one which tells a related circuit that it is okay to perform some task: "the data is ready to read", "the data is ready to write", "the inputs are ready to combine", etc.
A "clock" is just a way to organize many circuits on the same latch signal. All data must be ready at the same time, and then the clock strikes, latching all the circuits that use that data. Most simple data circuits will work if you clock them once a year, instead of once every few nanoseconds.
A clock has to be set to a period that the worst-case circuit can cope with. If it takes a circuit a long time to generate its results, the next circuit had better not be latched too early, so the clock is slowed to make sure the results are always ready in time.
Parallel printers work on a single latch, and no clock is needed. Other communications would be possible quite easily without the assumption that latches always occur at a fixed frequency. Ethernet may be trickier, but it's the same principle.
[
Hmmm, seems like one or two early posters seem to think that we will see these chips in desktop PCs (asking about USB, ATA, SCSI support, etc). But if you expect to find these ETRAX system-on-chip units in a desktop PC, then you'll be looking in the wrong place - because they'll be in embedded systems.
With 8MB SDRAM and 2MB Flash memory, these chips could be running your next souped-up GPS device, your next smart (landline) phone, your internet-savvy fridge, your second generation PVR, etc, etc.
As we move to a "chips in everything" society, lower power, highly integrated processors like this one will run countless devices. Today they may cost $50, tomorrow they will cost a fraction of that and will be just about everywhere.
"Accept that some days you are the pigeon, and some days you are the statue." - David Brent, Wernham Hogg