This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

why do we call ARM is a Processor not controller? Although ARM7(LPC2148) and ARM cortex-m series is controller.

Although ARM 7 (LPC2148) and ARM cortex-m series is controller. But when someone asks about ARM, we use the word Processor not controller why??

Parents
  • Well, a microcontroller is normally defined by a CPU + hardware in one package.

    The silicon vendors get the CPU core from ARM (but as far as I understand, also additional technologies, which integrates smoothly with the core; for instance the AHB and APB).

    Thus a microcontroller is more than just the CPU core.

    Most of the time, a microcontroller has some memory embedded inside it (for instance SRAM and Flash), plus functionalities like interfaces (SPI, I2C, I2S, CAN and U(S)ART to mention a few).

    On the other hand, a Microprocessor can be seen as the bare core with pins; it does nothing but process instructions and requires external memory and peripherals to function. This allows the engineer more flexibility, perhaps he wants to use a certain memory range for reading/writing to a harddisk controller.

    The LPC2148 is a microcontroller, so is any Cortex-M (this far).

    Farnell calls some of Freescale's Cortex-A "Microprocessors", even though they have embedded features.

    ARM1 on the other hand, is a microprocessor; it was designed for a computer and required external memory and peripherals.

    I do not know if there are any recent implementations of the ARM architecture, which is a microprocessor, though; but if there is, then I believe it would be Cortex-A based.

    Normally, microcontrollers are thought of as slow devices, which are used to turn on electricity or turn off electricity (using electronic switches, such as relays or MOSFETs. But that's not the case, when we speak about ARM microcontrollers.

    These are *very* fast, compared to most other microcontrollers. It's very common to have 72MHz and above. The STM32F4 series easily runs at 168MHz, and can turn things on/off up to 90 million times per second.

    Microcontrollers that are this fast allows you to connect TFT displays, they can communicate via Ethernet or WiFi and can do precise control of motors, plus measure rotation speed (using encoders) and more.

    It won't pay to buy a slower microcontroller today. You don't get a lower price, even though the speed is a fraction of the ARM microcontroller.

    Cortex-M based microcontrollers are very good at saving power, in addition to being fast. If you need to run from a 3V Li-Ion battery, you might want to use a Cortex-M0+; but sometimes it might pay to use a Cortex-M3 or Cortex-M4, in case you need it to do a lot of work. This is because the Cortex-M4 does the job much quicker and thus can go to power saving mode a lot sooner. STMicroelectronics recently developed a low power Cortex-M4 family called STM32L4; they also have a Cortex-M3 based low-power family called STM32L1.

Reply
  • Well, a microcontroller is normally defined by a CPU + hardware in one package.

    The silicon vendors get the CPU core from ARM (but as far as I understand, also additional technologies, which integrates smoothly with the core; for instance the AHB and APB).

    Thus a microcontroller is more than just the CPU core.

    Most of the time, a microcontroller has some memory embedded inside it (for instance SRAM and Flash), plus functionalities like interfaces (SPI, I2C, I2S, CAN and U(S)ART to mention a few).

    On the other hand, a Microprocessor can be seen as the bare core with pins; it does nothing but process instructions and requires external memory and peripherals to function. This allows the engineer more flexibility, perhaps he wants to use a certain memory range for reading/writing to a harddisk controller.

    The LPC2148 is a microcontroller, so is any Cortex-M (this far).

    Farnell calls some of Freescale's Cortex-A "Microprocessors", even though they have embedded features.

    ARM1 on the other hand, is a microprocessor; it was designed for a computer and required external memory and peripherals.

    I do not know if there are any recent implementations of the ARM architecture, which is a microprocessor, though; but if there is, then I believe it would be Cortex-A based.

    Normally, microcontrollers are thought of as slow devices, which are used to turn on electricity or turn off electricity (using electronic switches, such as relays or MOSFETs. But that's not the case, when we speak about ARM microcontrollers.

    These are *very* fast, compared to most other microcontrollers. It's very common to have 72MHz and above. The STM32F4 series easily runs at 168MHz, and can turn things on/off up to 90 million times per second.

    Microcontrollers that are this fast allows you to connect TFT displays, they can communicate via Ethernet or WiFi and can do precise control of motors, plus measure rotation speed (using encoders) and more.

    It won't pay to buy a slower microcontroller today. You don't get a lower price, even though the speed is a fraction of the ARM microcontroller.

    Cortex-M based microcontrollers are very good at saving power, in addition to being fast. If you need to run from a 3V Li-Ion battery, you might want to use a Cortex-M0+; but sometimes it might pay to use a Cortex-M3 or Cortex-M4, in case you need it to do a lot of work. This is because the Cortex-M4 does the job much quicker and thus can go to power saving mode a lot sooner. STMicroelectronics recently developed a low power Cortex-M4 family called STM32L4; they also have a Cortex-M3 based low-power family called STM32L1.

Children
No data