8051 Family: Difference between revisions
Jump to navigation
Jump to search
(→Intel) |
No edit summary |
||
Line 1: | Line 1: | ||
The '''Intel 8051''' is a single chip microcontroller which was developed by Intel in 1980 for use in embedded systems. It has become very popular in the 80s, but today many |
The '''Intel 8051''' is a single chip microcontroller which was developed by Intel in 1980 for use in embedded systems. It has become very popular in the 80s, but today many manufacturers propose enhanced versions that are 8051-compatible. |
||
==Architecture== |
==Architecture== |
||
=== Speed === |
=== Speed === |
||
⚫ | |||
{| border="1" cellpadding="5" cellspacing="0" style="text-align:center" |
|||
** Supported clock frequencies: 12MHz, 16MHz, 20MHz, and 24MHz. |
|||
|- |
|||
** Clock cycles per instructions: 12 (ie. all instructions takes a multiple of 12 oscillation periods). |
|||
! align="left" | Name || Clock freq. || clock / instr. cycle(*) |
|||
* '''Optimized 8051''' (source: NXP): |
|||
|- |
|||
** Supported clock frequencies: from 7MHz to 40MHz. |
|||
⚫ | |||
** Clock cycles per instructions: 2 (LPC900 family), 6 (LPC700 and 80C51 family), 12(80C51). |
|||
| 12MHz<br>16MHz<br>20MHz<br>24MHz |
|||
| 12 |
|||
|- |
|||
| align="left" rowspan="2" | '''NXP P89V66x'''<br>'''NXP P89CV51Rx2''' |
|||
| 0MHz..40MHz |
|||
| 12 |
|||
|- |
|||
| 20MHz |
|||
| 6 |
|||
|- |
|||
| align="left" rowspan="2" | '''NXP P8xC660X2/661X2'''<br>'''NXP P87C51RX2''' |
|||
| 0MHz..33MHz |
|||
| 12 |
|||
|- |
|||
| 0MHz..30MHz |
|||
| 6 |
|||
|- |
|||
| align="left" | '''NXP LPC938''' |
|||
| 12MHz<br>18MHz |
|||
| 2 |
|||
|} |
|||
(*) # clock oscillation periods / instruction cycle. |
|||
=== Expanded RAM === |
|||
Intel 8XC51RA series uses a trick called ''Expanded RAM'' to allow accessing 512 byte of on-chip RAM memory. See [http://download.intel.com/design/MCS51/MANUALS/27266801.pdf 8XC51RA/RB/RC Hardware Description] for detailed information. |
|||
In summary, there are 4 RAM memory segments: |
|||
{| border="1" cellpadding="5" cellspacing="0" style="text-align:center" |
|||
|- |
|||
| align="left" | Lower 128 bytes of RAM |
|||
| 00h..7Fh |
|||
| DIRECT |
|||
| INDIRECT |
|||
| |
|||
|- |
|||
| align="left" | Upper 128 bytes of RAM |
|||
| 80h..FFh |
|||
| |
|||
| INDIRECT |
|||
| |
|||
|- |
|||
| align="left" | Special Function Registers (SFR) |
|||
| 80h..FFh |
|||
| DIRECT |
|||
| |
|||
| |
|||
|- |
|||
| align="left" | 256-byte expanded RAM (ERAM) |
|||
| 00h..FFh |
|||
| |
|||
| |
|||
| <tt>MOVX @R0</tt><br><tt>MOVX @R1</tt><br><tt>MOVX @DPTR</tt><br>(EXTRAM=0) |
|||
|} |
|||
== Links == |
== Links == |
||
Line 38: | Line 91: | ||
** [http://www.standardics.nxp.com/products/mcus/80c51/ 80C51 product parametric filter] |
** [http://www.standardics.nxp.com/products/mcus/80c51/ 80C51 product parametric filter] |
||
** [http://www.standardics.nxp.com/support/documents/microcontrollers/?scope=80C51 80C51 support documents] |
** [http://www.standardics.nxp.com/support/documents/microcontrollers/?scope=80C51 80C51 support documents] |
||
* LPC900 family |
|||
** [http://www.standardics.nxp.com/products/lpc900/datasheet/p89lpc938.pdf Datasheet - 2-clock controller LPC938] |
|||
* [http://www.standardics.nxp.com/support/microcontrollers/ Microcontrollers support page] |
* [http://www.standardics.nxp.com/support/microcontrollers/ Microcontrollers support page] |
Latest revision as of 18:47, 25 August 2008
The Intel 8051 is a single chip microcontroller which was developed by Intel in 1980 for use in embedded systems. It has become very popular in the 80s, but today many manufacturers propose enhanced versions that are 8051-compatible.
Architecture
Speed
Name | Clock freq. | clock / instr. cycle(*) |
---|---|---|
Standard 8051 | 12MHz 16MHz 20MHz 24MHz |
12 |
NXP P89V66x NXP P89CV51Rx2 |
0MHz..40MHz | 12 |
20MHz | 6 | |
NXP P8xC660X2/661X2 NXP P87C51RX2 |
0MHz..33MHz | 12 |
0MHz..30MHz | 6 | |
NXP LPC938 | 12MHz 18MHz |
2 |
(*) # clock oscillation periods / instruction cycle.
Expanded RAM
Intel 8XC51RA series uses a trick called Expanded RAM to allow accessing 512 byte of on-chip RAM memory. See 8XC51RA/RB/RC Hardware Description for detailed information.
In summary, there are 4 RAM memory segments:
Lower 128 bytes of RAM | 00h..7Fh | DIRECT | INDIRECT | |
Upper 128 bytes of RAM | 80h..FFh | INDIRECT | ||
Special Function Registers (SFR) | 80h..FFh | DIRECT | ||
256-byte expanded RAM (ERAM) | 00h..FFh | MOVX @R0 MOVX @R1 MOVX @DPTR (EXTRAM=0) |
Links
- The 8051 on Wikipedia.
- My links on Del.icio.us.
- A website on 8051/8052 controllers [1].
Intel
- Documentation page.
- MCS 51 core
- MCS 51/251 - Classic
- 128 byte on-chip data RAM
- Main page
- 87C51/80C51BH/80C31BH Commercial/Express version
- 80C31BH/80C51BH/87C51 Automotive version
- MCS 51/251 - Expanded RAM
NXP
NXP (ex. Philips Semiconductors) offers a wide range of 8051-compatible controllers:
- LPC900 family