Sunday 25 December 2016

Embedded Micro-controllers - A Comparison [ Embedded Design Engineers Guide] - Part 1

Introduction:

                 Most people in the industry usually get struck with one processor family , or else with one processsor making company (NXP. Atmel ,TI)  They never know the advantage and disadvantage of other products ... They just carry on with their design ...  My first company was font of Atmel , they use Atmel chips only ...  Second one was using Motorola chips (Freescale ,ohh no now its Qualcom).
I have interacted with many designers , they say ,
       1.X, or Y processor suits their requirement , so they dont want to change it
       2.Our application is very special one , So even though its high cost , we dont want to change it.
       3.Our Processor is proven field tested , I dont want to take risk.
       4.Our processor works underwater/oil and gas environment , sorry no need ..
       5.EMI,High voltage environment ,we cant change  so Sorry
       6.We have complex PID loop ,Only DSP processor will work.. dont want ARM..

Now I will explain you about something you might have never attempted , no where available..
There are hardly 10 companies in this bussines

Who are all the leading manufacturers

1.NXP
2.Texas Instruments
3.ST Micro electronics
4. Atmel /Microchip
5 Cypress
6.Infineon
7.Renesas
8.Silicon Labs
9.nuvoTon
10.Analog Devices
11.Maxim
12.stcmicro
13.GigaDevice

How do I choose a chip for my product

Technical Aspects
1. Processor Architecture (8051,ARM,DSP,Soft Processor)
2. Speed
3. Communication Protocols Requirements (UART/I2C/SPI/LIN/CAN/Ethernet/FlexRay/USB/Profibus/Profinet/CANopen/Device Net/Ethernet/IP/Modbus Serial/Modbus IP/FFieldBus/Hart/ControNet)  Some of the protocols run on Layer 2/Layer 3  , They are nothing to do with the hardware selection , but there are controllers/manufaturers who give free libraries for these protocols , which reduce the time & cost involved in the driver development.
4.GPIO Requirement
5.Special Timer /PWM Sync requirement
6.ADC chanel number / Sampling Rate /Resolution [8 bit /12 bit /14 bit /16 bit ]
7.DAC [resolution ]
8.Power consumption
9.Video Output[TV AV /HDMI /VGA/LCD ]
10.Audio Processing

Management Aspects
[This is what I convey to my boss]
1.Price [With/without import duty ,some cases when you export it , you can reclaim this amount]
2.Availability [Send a formal mail to the chip vendor and ask them the availability of the chip for another 10 years /will there be pin to pin replacement in case if it becomes obsolete..
3.Peripheral support Driver source code  / binary blob ?
4.Compiler cost /one time or what ? Runtime license Involved ?  Other tools (JTAG /ISP Programmer)
5.Aditional Lab Equipment Needed for debugging [Logical Analyser /Protocol Analyser ]

Now lets see who are all the specialist in What ?
         Some time the design engineer has to assume himself as a doctor and prescribe correct chips..
 Now lets see the list of companies one by one..

1.NXP
    http://www.nxp.com/

    a. LPC series [300 ICs] [brought from philips ]
                     i.ARM Cortex M0 M0+ M3 M4 Cores
                     ii.30-200MHz Speed
                     iii.Flash 4-1Mb
                     iv.USB Host + Device[High Speed /Full Speed]
                          Large data capturing requires High Speed Device [480Mpbs]
                     v.CAN- 1-2 CAN bus
                     vi.GPIO -11-165 Pins
                     vii.PWM+ADC for motor control
                     viii.Price  2-18$
                     ix.Special Features : LPC4370FET100 /LPC43S70FET256 both have 80Msps ADC
                     which make it ideal solution for Software defined Radio .. Usually No controller support                      high speed ADC [Need FPGA +Analog devices ADC+Microcontroller]

    b. Kinetis [ARM Cortex M4]
                     i.Similar to LPC series
                     ii.low power consumption
    c.MPC5XXX
                     i.32 bit PowerPC architecture
                     ii.40-400Mhz
                     iii. 2- 8 CAN Specially made for automobile Industry
                     vi.compiler license
      d.POwer QUICC
                       i.PCI bus is specialty , but costly
      e.DSP Processor/Controller
                  16bit processor good for motor control but expansive ,I recommand LPC/STM32
      f.ColdFire processor

I recommend LPC series for new designs .. Old /retrofit /legacy products , I dont recommend because , the software cost (Porting /Testing / Field trial/Approval )associated with rewriting the code is enormous  , unless if you see any substantial  benifit from it , dont attempt it .. I personally seen many people had a very bad experience .. Always here will be a voice in the team (it worked there in the old code , not working here ,so fix it)

LPCXpressoIDE is free tool , For most cases , you dont have to worry about ARM compiler .. GCC linaro works very well.. and its free..

FreeRTOS support is available ..( RTOS saves you time )

MPC5XXX is good for Autombile Industry especially it can serve as a CAN gateway , but check Renesas and Infineon before finalizing your chip

DSP Processor/Controller
               I recommend this for motor control board , power supply , It can run on any hostile environment .. It also has a good CAN support.. but its costly

2.TI:
         a.MSP430/MSP432
               i.Low power 16 bit processor , If you have  not fixed your mind with Cortex M , this series is best ...  TI usually provide a very good support too. You can use this incase of geneeral pourpose 8051 replacement controller ..   
               ii. Value for money, Starting from 1$ 

         b.Piccolo  TMS320 
                 i. Good for DSP / motor control application , It has a good ADC resolution
         c..TM4C12X ARM Cortex M
                 i.Its a good ,well supported processor , having USB & Ethernet support .. For fast prototype  I strongly recommand this processor .. cost $10 Range
         d.Hercules ARM Cortex R4 [Real Time]
                 i.Its Costly 20$ range 
                 ii.I dont recommand this considering the cost , but if you have a special reason to choose Cortex R , then OK
                 iii.Hercules 5 Series has FlexRay support , but 38$(1K) 
           e. RF430/CC430(6$)
                  i.Good for NFC RF Transceiver   /RFID
                  ii.Price 1$
            f.SimpleLinkCC1X 
                   i.1GHz propitiatory  protocol



3..ST Micro electronics 
             It is known for making low cost cortex M controller ..  ST is lot cheaper than NXP & TI 
If you are concerned about cost go with this , DSP ,PID what ever the special function can be handled very well by the software .. 

              a. STM8
                        i.8 bit microcontroller 
                        ii.1-2$
              b.STM32
                        i. 1-15$ whole verity of Cortex M Processor available 
                            best suited for cost effective design..
                        ii.USB+CAN Comes around 1.5$  where as if we search the same in TI or NXP it will be costly 
               c.SPC (Automomobile ) 
                           i.It has Flexray + 6 CAN around 10-15$ extremly cheap compared to NXP & TI
              d.Low Power Cortex M0+ -3$
              
 Atmel /Microchip

                   I was a big fan of AVR processors , after working with ARM 32  bit processor , my opinions changed , I still love Atmel ..
                  a.AT32  
                           i. 60Mhz ,32 bit , 
                           ii. 10$  sorry costly 
                  b.AT89 
                            i.Old series , I love it .
                            ii.DIP Pakages make it easy for prototyping 
                   c.AT90CAN
                            i. CAN bus series  ,10$
                   d.AT90USB
                             i.USB Series 5-10$
                   e.ATSAM
                              i.ARM7
                              ii.10-15$
                    f.ATmega
                           i.My First processor 2-10$
                           ii.Awesome one
                    g.ATSAM3
                            i.Cortex -M3
                            ii.5-10$ 
                    h.ATSAM4
                             i.Cortex-M4
                     i.ATSAMA5
                             i.Cortex -A5
                             ii.500MHz
                             iii.10$
                     j.ATSAMC20
                             i.Cortex-M0+
                             ii.4$
                     k.ATSAME7
                     
                     l. ATtiny
                            i.Cute compact series 
                            ii.1-3$

Microchip
                    a.8Bit
                            i.PIC 10/12/16/18
                            ii.0.5 to 2 $
                    b.16Bit
                             i.dsPIC33,PIC24
                             ii.2-6$
                    c.32Bit
                              i.PIC32
                              ii.2-10$

5.Cypress
                      Cypress is expert in USB
                       a.PSOC Cortex
                           one of the wonderful product still fuguring out how it can be used in my application
                       b. FM Cortex M  3-15$
                       
6.Infineon
                       a.ARM Cortex M
                       b.Tricore poor documentation
7.Renesas
                       

I hate Infineon & Renesas ,they give more and more irrelevant informations... Webpage turned to be an advertisement page ..  

8.Silicon Labs
                       a.8051 Chips
                       b.ARM Cortex M
9.nuvoTon
                a.8051 chips  2$
                b.ARM cortex M chips 4-10$
                They do  Foundary business too ..
10.Analog Devices
                     a.blackfin
                     b.SHARC
                 i.Love analog devices for its 1Gsps ADC .. some audio processing chips available
                 ii.Cost above 20$ ... 

11.Maxim
                a. Low Power MAX32
                b.Secure 
                c.Deep Cover 
                Secure RAM based erasable chips available , good for POS machines 
                   
12.stcmicro
                very cheap chinese 8051 based chips 
                 STM32 Clone names 
13.GigaDevice
                     STM32 clone names ... This stuff available in china .. no international distributer sells it ..


My Recommendation 
               I value money , For general IO board design I choose PIC/Atmel ..  
                                         For High end connectivity application I go for STM32
                                         For USB Stuffs Cypress
                                         For ADC /audio codec processor Analog devices 
                                         For fast proto/design I go with  TI/NXP No one can match their quality 
                 

No comments:

Post a Comment