Thursday, December 12, 2013

Why do we use 11.0592 MHz with 8051 variants?

  1. Why do we use 11.0592 MHz with MCS-51 variants?
    The original 8051 could be operated at a maximum frequency of 12 MHz (reference).
    And 11.0592 MHz was the frequency very near the maximum operating frequency which was still a multiple of the standard baud rates.
    By the way original 8051s executed a single machine cycle every 12 clocks, so at 12 MHz, the instruction execution frequency was 1 million instructions per second.
  2. What are the standard baud rates?
    Baud rate refers to number of symbols sent through a channel in one second.
    The standard baud rates are 2400, 4800, 9600, 19200, 38400, 57600, 115200 etc.
    Baud rate is also known as symbol rate.
    These are the symbol rates used in all kinds of serial communications.
    The first serial communications were those that were carried over telephones lines.
    (Reference: Bell 202 Modem, Acoustic Coupler)
  3. What is the relation between baud rate and bit rate?
    Baud rate is number of symbols per seconds.
    Bit rate is number of bits per seconds.
    One symbol can represent 1, 2 3 or more bits.
    In BPSK, each symbol represents a single bits (since there are only two symbols), hence in that case baud rate = bits per second.
    In 16QAM, each symbol represent 4 bits. So in that case bitrate is 4 times the baud rate.
  4. Where are these baud rates used?
    These baud rates are used to measure the data rates in telecommunications (wired and wireless).
    But for our discussions, the context is restricted to telecommunications over infrastructure originally intended for audio telephony.
    We operated our computer's UART at these baud rates to communicate with our modems (over RS232) which would then send data over the telephone network at the same speeds to other modems. The data rate used between the computer and the modem and the one used between two modems communication over the telephone network had to be a multiple of the baud rate.
    Since microcontroller were used in modems, the habit of using those baud rates stuck.
  5. Who decided upon these particular baud rates?
    International Telecommunications Union.
    More specifically, ITU Telecommunication Standardization Sector (ITU-T).
    In their V series recommendations - which describe the protocols that govern the telecommunications over telephone network.
  6. What are these ITU V Series recommendations based on?
    The telephone system was designed to carry human voice only.
    Even though humans can hear frequencies in the range of 20 to 20000 hertz, the maximum power density of our speech lies in the range 600 to 3000 hertz. The telephone network carries signals only in this range and attenuates frequencies below 600 hertz and above 3000 hertz. Any technology which tries to make use of the telephone network must be based on these limitation - i.e. much of the power carried by the data signal must lie within this band width.
    So if you actually read the modulation rates (aka baud rates) described in some of the V series recommendations, they are based on using modulation schemes like FSK, PSK, QAM in a channel band limited to 600 to 3000 Hz. This results in possible bitrates of 1200, 2400, 4800, 9600 14400, 28800 and so on. These were the speeds that our modems could support.

    V.22 : 1200 bits per second duplex modem standardized for use in the general switched telephone network and on point-to-point 2-wire leased telephone-type circuits

    V.32 : A family of 2-wire, duplex modems operating at data signalling rates of up to 9600 bit/s for use on the general switched telephone network and on leased telephone-type circuits
  7. Do we still need to use 11.0592 MHz?
    If your microcontroller can operate at higher frequency (like most modern day 8051s), you can use higher frequency like 14.7456 MHz and 22.1184 Mhz.
    If you want save power by operating at a lower frequency, crystals of 7.3728 MHz, 3.6864 MHz and even 1.8432 MHz

    You can also use crystals at frequencies which are not multiples of the baud rate and still get away with operating your microcontroller's UART successfully. Here's how.
  8. Besides Serial Communications, is 11.0592 also good for maintaining time using a real time chip?
    11059200 = 214 x 33 x 52
    So we can use some of these factors to get 86,400 (number of seconds in a day)
    But wait we are, not getting any where. for an RTC, we would like something like a 1 tick per second (1Hz).
    A 15 bit counter operating at 32768 hertz would overflow every one seconds - convenient to make a watch!
    More in depth discussion here.
  9. Are crystals of other frequencies used elsewhere?
    Yes. Have a look at this table.
    Other than the crystals which are multiples of baud rates and the 32.768 kHz one used in watches, the two most notable are the ones used in television circuity for NTSC and PAL signals. Read about colorburst.
  10. I still don't get it - why do we care?
    Because its funny and interesting at the same time.
    I once asked John F. Wakerly over email why TTL logic was based on +5 volts, here is what he had to say (do read the essay that he has linked to) :
This was the voltage chosen for the original TTL family.  I'm not sure of the exact reason.  It's possible that some previous logic families used 5V, but then there would still be the question for that family.  It was undoubtedly a tradeoff between power consumption, reliable switching operation, and noise margins.
Or perhaps it's more like the reason that railroad tracks are separated by the width that they are (see www.naciente.com/essay94.htm).
John

In summary, our decision to use 11.0592 MHz crystals in micro-controllers is indirectly based on the natural frequency of human hearing and speech characteristics - which is in a way similar to the solid rocket boosters having their diameters based on the width of two horses asses.

0 comments:

Post a Comment