Getting to Know Processor Architectures

27
Getting to Know Processor Architectures

description

Presentation on processors from micro controllers to DSP, FPGA.

Transcript of Getting to Know Processor Architectures

Getting to Know Processor Architectures

Getting to Know Processor Architectures

MicroprocessorCPU is stand-alone, RAM, ROM, I/O, timer are separateddesigner can decide on the amount of ROM, RAM and I/O ports.general-purposeEx. 8085,8086 mp, Motorola 6800, Intels 8086

MicrocontrollerCPU, RAM, ROM, I/O and timer are all on a single chipfix amount of on-chip ROM, RAM, I/O portssingle-purposeEx. 8051, PIC mc, Atmel, PhillipsMicroprocessor vs. microcontrollerPicking the right architecturedepends on your system & design needs (8 bit/ 16 bit/ 32 bit, floating point)performance requirements (DSP)development investment, both in terms of cost and time

Types of Processor Architectures

Microcontrollers (MCU)General purpose processors (ARM, MIPS, )Digital signal processing (DSP)Application-Specific Integrated Circuits (ASIC)Field Programmable Gate Array (FPGA) Which one should I choose???

Microcontrollers (MCU)

Is there any thing oyher than Microchip PIC?

Peripherals in C

RAM / Program memory/ EEPROMAnalog to Digital Converters (ADC)Pulse Width Modulation (PWM)Communication Buses (USART, Inter-Integrated Circuit-I2C, Serial Peripheral Interface-SPI, controller area network-CAN, USB, )Digital to Analog Converter (DAC)Input/ Output pinsTimers

Microcontroller AreSmall chip sizeRelatively low priceFaster developmentMicrocontroller Parameters Range8-bit , 16bit and 32-bit based devicesIntegrated RAM : 256B ~ 512kB or beyond Program memory : 0.5KB ~3MB or beyondClock Speed can be kHz ~ 180MHz or beyondIC pins: 6 ~ 300 or beyond

MCU Applications

Motor controlIndustrial automationAutomotiveSecurity SystemsLighting SystemsConsumer equipmentHealth Monitoring

General purpose processors (GPP) ARMMIPSIntelAMD

Processors advancementsCan Run on a OS (Linux distributions Ubuntu, Android, Fedora)Higher operating frequencyCan run multiple applications simultaneously.(since processor has memory management unit)Easy of development

Embedded Processor Applicationsportable navigation devicesenterprise/educational tabletsindustrial automationhome automation

Block Diagram of ARM processor

Embedded Processors

Popular Single board Computers

Raspberry Pi Run as a complete Computer

Digital signal processing (DSP) ApplicationsMachine VisionVideo Broadcasting & InfrastructureMilitary & Avionics ImagingIris BiometricsPortable MP3 playerMedical imaging (CT Scanners, MRI, ultra sound)High performance computingMission critical applications

DSP FeaturesDedicated multipliers Dedicated video, audio encoder, decodersFloating point hardware unitsMulti cores as processing units

Field Programmable Gate Array (FPGA)Logic Circuits (Combinational/Sequential)

A PIC is can be reprogrammed over and over again to execute different program flows each timeFPGA is a device which we can program a logic circuit into

23FPGA Whats inside?Logic Blocks (Gates)Programmable InterconnectionsI/O PortsMillions of logic gates and programmable interconnectionsIO ports/ Clock generators, Block RAM,

24FPGA Design Practices

Think of your logic circuit as a black box. Identify inputs and outputs.Describe (program) the body using an HDL. (Hardware Descriptive Language)VHDL VerilogCompile = SynthesizeOutput file = bitOnce programmed, the FPGA will implement the logic circuit described by your program within itselfParallel execution. Sequential is also possible.

25FPGA Programming

The logic circuit you describe using HDL will get implemented using logic gates and interconnections.26Why FPGA?Parallel ProcessingEasy PrototypingBoard Space Benefits Performance (Speed) Benefits as opposed to PCB Routing among several chips