SlideShare una empresa de Scribd logo
1 de 18
Introduction to Embedded Systems
Embedded system board
hardware architecture.
1. What is Embedded Systems
• Embedded Systems or Electronics systems that include an application
Specific Integrated Circuit or a Microcontroller to perform a specific
dedicated application.
• Embedded System is pre-programmed to do a specific function while a
general purpose system could be used to run any program of your choice.
Block diagram of a typical embedded system is
shown in fig.
2. Typical embedded board structure
For instance board Embest SBC6000X showed on fig.
3. Microcontroller Core Architecture
We will consider microcontroller core based on most popular architecture
ARM7TDMI.
The ARM7TDMI core is based on the Von Neumann architecture with a 32-
bit data bus that carries both instructions and data. Load, store, and swap
instructions can access data from memory. Data can be 8-bit, 16-bit, and 32-bit.
Operating modes
The ARM7TDMI core has seven modes of operation:
• User mode is the usual program execution state
• Fast Interrupt (FIQ) mode supports data transfer or channel processes to
allow very fast interrupt processing and to preserve values across
interrupt calls
• Interrupt (IRQ) mode is used for general purpose interrupt handling
• Supervisor mode is a protected mode for the operating system
• Abort mode is entered after a data or instruction prefetch abort
• System mode is a privileged user mode for the operating system
• Undefined mode is entered when an undefined instruction is executed
Bancked - mean providing multiple copies of a register at the same
address.
LR - R14 register is Link Register for store context return address
SP - R13 register is Stack Pointer
Current Program Status Register (CPSR)
Mode bits - shows which mode is current System, User, Fiq, Irq, Undefined,
Abort
I and F bit - control the enabling and disabling of interrupts
T bit - shows is core in the thumb mode ("1" 16-bit instruction set, "0" 32-bit)
4. Input/Output Ports
The digital signal is waveform that switches between
two voltage levels representing the two states of a Boolean
value (False - "0" and True - "1").
(1) low level mean "0", (2) high level Note: CMOS Vdd can be 1.8; 2.5; 3,3; 5V
mean "1", (3) rising edge, and (4) TTL Vcc is 5V
falling edge.
4.1 What is digital signal?
Technology Low Level
"0 "
High Level
"1"
CMOS 0 V to VDD/2 VDD/2 to VDD
TTL 0 V to 0.8 V 2 V to VCC
4.2 IO port control registers
• Enable/Disable Register - used to connect pin to general
purpose IO port or to embedded peripheral. 0/1 - mean connect/
disconnect
• Output Register - used to control pin level 0/1.
• Input Register - to read pin level 0/1.
• Connect/Disconnect Pull-Up Register - used in case pin is
input to enable/disable pull-up resistor.
Pull-up resistors are used in electronic logic circuits to ensure that inputs to
logic systems settle at expected logic levels if external devices are
disconnected or high-impedance is introduced
• Enable/Disable Open Drain Mode - to enable/disable open
drain(collector) mode
Open drain (collector) mode - give possibility connect external pull-up
resistor to alternative voltage. For instance to get output with digital level 5V on
microcontroller with power supply 3.3V through external pull-up to bus 5V.
• Enable/Disable Interrupt - this feature for pins configured as
input to enable/disable interrupt in case signal level is changed
4.3 Typical IO port application
IO ports can be used as for embedded peripheral
purpose and for control some external loads (output) and
acquire signals from sensors, buttons (input).
Below is showed typical input usage to acquire signal
from button.
Output port pin has current limitation refer to electrical
characteristic documentation. Due to current limitation to
avoid port destruction additional external transistor should
be used to switch led.
On the next fig showed how to control led by output pin.
5. Interrupts
There are two types of interrupts available on ARM
processor. The first type is the interrupt
caused by external peripherals (FIQ, IRQ) and the
second type is caused by software SWI assembler
instruction.
External Peripheral interrupt type has two priority
level:
•FIQ - for source that requires fast response time for
example DMA
•IRQ - for general purpose interrupts like periodic
timers
Note: FIQ interrupts have the highest priority, if a higher
priority interrupt goes active, the current ISR is interrupted
and the higher-priority ISR is executed.
6. Serial Interfaces
A USART (Universal Synchronous/Asynchronous Receiver/Transmitter) is
serial interface peripheral that facilitates communication through RS-232 or RS-
485 interface. The USART controller based on shift register Tx/Rx. Additional
register used to define clock which specify baud rate.
The baud rate of USART is depend on physical layer, common usage
speed is 1200, 9600, … 115200. Frame format is shown below.
USART module has two pins Rx - to receive data and TX - to transmit.
In case node1 connect to node2 - Rx1 should be crosswise connected to Tx2
and Tx1 to Rx2.
6.1 USART
The SPI circuit is a synchronous serial data link that provides
communication with external devices in Master or Slave Mode. It also used for
communication between processors. SPI in comparison with USART is faster
(up to ~50Mbps) and has additional signal line “clock”.
The SPI system consists of two data lines and two control lines:
• Master Out Slave In (MOSI): This data line supplies the output data from
the master shifted into the input(s) of the slave(s).
• Master In Slave Out (MISO): This data line supplies the output data from
a slave to the input of the master.
• Serial Clock (SCK): This control line is driven by the master and regulates
the flow of the data bits. The master may transmit data at a variety of baud
rates.
• Slave Select (SS): This control line allows slaves to be turned on and off
by master.
6.2 SPI (Serial Peripheral Interface)
Fig: SPI data time diagram
CPOL 0:1 – set an polarity of clock signals ; CPHA 0:1 – set phase clock
mode
The SPI implementation circuit is showed on fig below. There is one
master device and three slave devices that handled by NPCS0, NPCS1, NPCS3
signals.
6.3 I2C (I-two-C interface)
The I2C interface is a multi-master serial single-ended computer bus
invented by Philips used for attaching low-speed peripherals to embedded
system. Not to be confused with the term Two Wire Interface which only
describes a compatible hardware interface.
The I²C in comparison with SPI is using addressing instead NSS (slave select)
signal. I2C addressing mode can be 7-bit or 10-bit.
The I2C bus support next speed modes:

10kbit/s – Low Mode

100 kbit/s - Standard Mode

400 kbit/s - Fast mode.
The I²C uses only two bidirectional open-drain lines, Serial Data Line (SDA)
and Serial Clock (SCL), pulled up with resistors (about 10kOm). Typical voltages
used are +5 V or +3.3 V.
The address and the data bytes are sent most significant bit first. The start bit
is indicated by a high-to-low transition of SDA with SCL high; the stop bit is
indicated by a low-to-high transition of SDA with SCL high. All other transitions
of SDA take place with SCL low.
The I2C transfer sequence next:
The Master is sending a start bit followed by the 7-bit address, the last
address e bit R/W representing whether it wishes to write(0) or read(1) from
the Slave.
The Slave will respond with an ACK bit (active low for acknowledged) for
that address. The master then continues in either transmit or receive mode
(according to the read/write bit it sent), and the Slave continues to receive or
transmit.
R/W – bit define read mode in case level “1” and write mode if “0”.
ACK/NACK – if Slave set in bit ACK “0” that mean acknowledge,
otherwise level “1” mean decline.
7. SRAM and SDRAM what is the
difference?
The SRAM or (Static Random Access Memory) is static type of memory.
It is called “static” because it does not have to be refreshed. SRAM access
times are very fast because it doesn’t need to pause between cycle times. It is
very expensive memory.
The SDRAM or (Synchronous Dynamic Random Access Memory) is a
type of computer storage that needs frequent refreshing and has a
synchronous interface. It is slower than SRAM because it refers to the
microprocessor clock before responding thus synchronizing to the system bus
and requiring a pause between cycles.
Below showed SRAM/SDRAM table comparison:
Attribute SRAM SDRAM
Speed Fast Slower than
SRAM
Price Expensive Chip
Capacity ~4Mbit ~4Gbyte
Power
consumption
Low High(due to
refreshing)
8. NAND and NOR what is the difference?
NOR offers faster read speed and random access capabilities as it has
both Addressing and Data Bus,that making it suitable for execute in place.
From last property NOR flash used for code storage in embedded devices.
Software typically does not have to worry about error correction or bad blocks.
NOR flash is lower density and has lower write speed than NAND flash.
NAND flash is faster but does not support execute in place. Additionally,
bad block management is required for NAND flash as well as complex error
correction. NAND flash is available at much higher densities than NOR flash
and is a lot cheaper.
Below is table comparison:
Attribute NOR NAND
Capacity Up to 16Mbit Up to 4Gbit
Speed Fast Read
Slow Write
Erase Very Slow
Fast Read
Fast Write
Fast Erase
Interface connection Address and Data Bus Data bus combined
with address, toggling
CLE, ALE
Access Random Sequential by blocks

Más contenido relacionado

La actualidad más candente

dma controller Direct Memory Access,The 8237 DMA Controller dma
dma controller Direct Memory Access,The 8237 DMA Controller dmadma controller Direct Memory Access,The 8237 DMA Controller dma
dma controller Direct Memory Access,The 8237 DMA Controller dmaAgathiSiva
 
Interfacing of data converters & io devices
Interfacing of data converters & io devicesInterfacing of data converters & io devices
Interfacing of data converters & io devicesDr.YNM
 
Input Output Operations
Input Output OperationsInput Output Operations
Input Output Operationskdisthere
 
Pin diagram of 8085
Pin diagram of 8085Pin diagram of 8085
Pin diagram of 8085ShivamSood22
 
8259 Programmable Interrupt Controller
8259 Programmable Interrupt Controller8259 Programmable Interrupt Controller
8259 Programmable Interrupt Controllerabhikalmegh
 
Applications of 8051 microcontrollers
Applications of 8051 microcontrollersApplications of 8051 microcontrollers
Applications of 8051 microcontrollersDr.YNM
 
8251 a usart programmable communication interface(1)
8251 a usart   programmable communication interface(1)8251 a usart   programmable communication interface(1)
8251 a usart programmable communication interface(1)divyangpit
 
Solution manual the 8051 microcontroller based embedded systems
Solution manual the 8051 microcontroller based embedded systemsSolution manual the 8051 microcontroller based embedded systems
Solution manual the 8051 microcontroller based embedded systemsmanishpatel_79
 
8259 A P R O G R A M M A B L E I N T E R R U P T C O N T R O L L E R2
8259 A  P R O G R A M M A B L E  I N T E R R U P T  C O N T R O L L E R28259 A  P R O G R A M M A B L E  I N T E R R U P T  C O N T R O L L E R2
8259 A P R O G R A M M A B L E I N T E R R U P T C O N T R O L L E R2Aisu
 
Input Output Organization
Input Output OrganizationInput Output Organization
Input Output OrganizationKamal Acharya
 
8259 Interrupt Controller
8259 Interrupt Controller8259 Interrupt Controller
8259 Interrupt ControllerShivamSood22
 

La actualidad más candente (19)

8251 USART
8251 USART8251 USART
8251 USART
 
8251 USART
8251 USART8251 USART
8251 USART
 
dma controller Direct Memory Access,The 8237 DMA Controller dma
dma controller Direct Memory Access,The 8237 DMA Controller dmadma controller Direct Memory Access,The 8237 DMA Controller dma
dma controller Direct Memory Access,The 8237 DMA Controller dma
 
Programmable dma controller 8237
Programmable dma controller 8237Programmable dma controller 8237
Programmable dma controller 8237
 
Interfacing of data converters & io devices
Interfacing of data converters & io devicesInterfacing of data converters & io devices
Interfacing of data converters & io devices
 
Uart
UartUart
Uart
 
Input Output Operations
Input Output OperationsInput Output Operations
Input Output Operations
 
Pin diagram of 8085
Pin diagram of 8085Pin diagram of 8085
Pin diagram of 8085
 
8 bit microcontroller
8 bit microcontroller8 bit microcontroller
8 bit microcontroller
 
8259 Programmable Interrupt Controller
8259 Programmable Interrupt Controller8259 Programmable Interrupt Controller
8259 Programmable Interrupt Controller
 
Applications of 8051 microcontrollers
Applications of 8051 microcontrollersApplications of 8051 microcontrollers
Applications of 8051 microcontrollers
 
Hardware View of Intel 8051
Hardware View of Intel 8051Hardware View of Intel 8051
Hardware View of Intel 8051
 
8251 a usart programmable communication interface(1)
8251 a usart   programmable communication interface(1)8251 a usart   programmable communication interface(1)
8251 a usart programmable communication interface(1)
 
Solution manual the 8051 microcontroller based embedded systems
Solution manual the 8051 microcontroller based embedded systemsSolution manual the 8051 microcontroller based embedded systems
Solution manual the 8051 microcontroller based embedded systems
 
8155 PPI
8155 PPI8155 PPI
8155 PPI
 
8259 A P R O G R A M M A B L E I N T E R R U P T C O N T R O L L E R2
8259 A  P R O G R A M M A B L E  I N T E R R U P T  C O N T R O L L E R28259 A  P R O G R A M M A B L E  I N T E R R U P T  C O N T R O L L E R2
8259 A P R O G R A M M A B L E I N T E R R U P T C O N T R O L L E R2
 
Input Output Organization
Input Output OrganizationInput Output Organization
Input Output Organization
 
viva q&a for mp lab
viva q&a for mp labviva q&a for mp lab
viva q&a for mp lab
 
8259 Interrupt Controller
8259 Interrupt Controller8259 Interrupt Controller
8259 Interrupt Controller
 

Similar a Introduction to embedded systems

Embedded systems and robotics by scmandota
Embedded systems and robotics by scmandotaEmbedded systems and robotics by scmandota
Embedded systems and robotics by scmandotascmandota
 
communication interfaces-Embedded real time systems
communication interfaces-Embedded real time systemscommunication interfaces-Embedded real time systems
communication interfaces-Embedded real time systemsRaghunath reddy
 
ARM stacks, subroutines, Cortex M3, LPC 214X
ARM  stacks, subroutines, Cortex M3, LPC 214XARM  stacks, subroutines, Cortex M3, LPC 214X
ARM stacks, subroutines, Cortex M3, LPC 214XKarthik Vivek
 
embedded system introduction to microcontrollers
embedded system introduction to microcontrollersembedded system introduction to microcontrollers
embedded system introduction to microcontrollersBarER4
 
eCOG1X 16-bit Microcontrollers
eCOG1X 16-bit MicrocontrollerseCOG1X 16-bit Microcontrollers
eCOG1X 16-bit MicrocontrollersPremier Farnell
 
Electronics Microcontrollers for IoT applications
Electronics Microcontrollers for IoT applicationsElectronics Microcontrollers for IoT applications
Electronics Microcontrollers for IoT applicationsLeopoldo Armesto
 
ASTROSAT SSR - 2015-05-15
ASTROSAT SSR - 2015-05-15ASTROSAT SSR - 2015-05-15
ASTROSAT SSR - 2015-05-15Aritra Sarkar
 
Introduction to Stellaris Family Microcontrollers
Introduction to Stellaris Family MicrocontrollersIntroduction to Stellaris Family Microcontrollers
Introduction to Stellaris Family MicrocontrollersPremier Farnell
 
Basic Study on the WT12 Family of Bluetooth Devices
Basic Study on the WT12 Family of Bluetooth DevicesBasic Study on the WT12 Family of Bluetooth Devices
Basic Study on the WT12 Family of Bluetooth DevicesPremier Farnell
 
mic_unit1.pdf msbte unit 1 note pdf in ppt
mic_unit1.pdf msbte unit 1 note pdf in pptmic_unit1.pdf msbte unit 1 note pdf in ppt
mic_unit1.pdf msbte unit 1 note pdf in pptxboyxman1000
 
Wireless Microcontroller (IEEE802.15.4 and ZigBee): JN5139
Wireless Microcontroller  (IEEE802.15.4 and ZigBee): JN5139Wireless Microcontroller  (IEEE802.15.4 and ZigBee): JN5139
Wireless Microcontroller (IEEE802.15.4 and ZigBee): JN5139Premier Farnell
 
An Overview of LPC2101/02/03
An Overview of LPC2101/02/03An Overview of LPC2101/02/03
An Overview of LPC2101/02/03Premier Farnell
 
UNIT- 3.pptx
UNIT- 3.pptxUNIT- 3.pptx
UNIT- 3.pptxBASKARS53
 
Study on 32-bit Cortex - M3 Powered MCU: STM32F101
Study on 32-bit Cortex - M3 Powered MCU: STM32F101Study on 32-bit Cortex - M3 Powered MCU: STM32F101
Study on 32-bit Cortex - M3 Powered MCU: STM32F101Premier Farnell
 
MCF5223x: Integrated ColdFire V2 Ethernet Microcontrollers
MCF5223x: Integrated ColdFire V2 Ethernet MicrocontrollersMCF5223x: Integrated ColdFire V2 Ethernet Microcontrollers
MCF5223x: Integrated ColdFire V2 Ethernet MicrocontrollersPremier Farnell
 
Digital Electronics – Unit V.pdf
Digital Electronics – Unit V.pdfDigital Electronics – Unit V.pdf
Digital Electronics – Unit V.pdfKannan Kanagaraj
 
UNIT-V (PIC16F877-Microcontrollers).pdf
UNIT-V (PIC16F877-Microcontrollers).pdfUNIT-V (PIC16F877-Microcontrollers).pdf
UNIT-V (PIC16F877-Microcontrollers).pdfdhiyasrinivasan112
 
Study On MCP23S09 I/O Expander with SPI Interface
Study On MCP23S09 I/O Expander with SPI InterfaceStudy On MCP23S09 I/O Expander with SPI Interface
Study On MCP23S09 I/O Expander with SPI InterfacePremier Farnell
 

Similar a Introduction to embedded systems (20)

Embedded systems and robotics by scmandota
Embedded systems and robotics by scmandotaEmbedded systems and robotics by scmandota
Embedded systems and robotics by scmandota
 
communication interfaces-Embedded real time systems
communication interfaces-Embedded real time systemscommunication interfaces-Embedded real time systems
communication interfaces-Embedded real time systems
 
ARM stacks, subroutines, Cortex M3, LPC 214X
ARM  stacks, subroutines, Cortex M3, LPC 214XARM  stacks, subroutines, Cortex M3, LPC 214X
ARM stacks, subroutines, Cortex M3, LPC 214X
 
Assembler4
Assembler4Assembler4
Assembler4
 
embedded system introduction to microcontrollers
embedded system introduction to microcontrollersembedded system introduction to microcontrollers
embedded system introduction to microcontrollers
 
eCOG1X 16-bit Microcontrollers
eCOG1X 16-bit MicrocontrollerseCOG1X 16-bit Microcontrollers
eCOG1X 16-bit Microcontrollers
 
Electronics Microcontrollers for IoT applications
Electronics Microcontrollers for IoT applicationsElectronics Microcontrollers for IoT applications
Electronics Microcontrollers for IoT applications
 
ASTROSAT SSR - 2015-05-15
ASTROSAT SSR - 2015-05-15ASTROSAT SSR - 2015-05-15
ASTROSAT SSR - 2015-05-15
 
Introduction to Stellaris Family Microcontrollers
Introduction to Stellaris Family MicrocontrollersIntroduction to Stellaris Family Microcontrollers
Introduction to Stellaris Family Microcontrollers
 
NAVEEN UART BATCH 43
NAVEEN UART BATCH 43NAVEEN UART BATCH 43
NAVEEN UART BATCH 43
 
Basic Study on the WT12 Family of Bluetooth Devices
Basic Study on the WT12 Family of Bluetooth DevicesBasic Study on the WT12 Family of Bluetooth Devices
Basic Study on the WT12 Family of Bluetooth Devices
 
mic_unit1.pdf msbte unit 1 note pdf in ppt
mic_unit1.pdf msbte unit 1 note pdf in pptmic_unit1.pdf msbte unit 1 note pdf in ppt
mic_unit1.pdf msbte unit 1 note pdf in ppt
 
Wireless Microcontroller (IEEE802.15.4 and ZigBee): JN5139
Wireless Microcontroller  (IEEE802.15.4 and ZigBee): JN5139Wireless Microcontroller  (IEEE802.15.4 and ZigBee): JN5139
Wireless Microcontroller (IEEE802.15.4 and ZigBee): JN5139
 
An Overview of LPC2101/02/03
An Overview of LPC2101/02/03An Overview of LPC2101/02/03
An Overview of LPC2101/02/03
 
UNIT- 3.pptx
UNIT- 3.pptxUNIT- 3.pptx
UNIT- 3.pptx
 
Study on 32-bit Cortex - M3 Powered MCU: STM32F101
Study on 32-bit Cortex - M3 Powered MCU: STM32F101Study on 32-bit Cortex - M3 Powered MCU: STM32F101
Study on 32-bit Cortex - M3 Powered MCU: STM32F101
 
MCF5223x: Integrated ColdFire V2 Ethernet Microcontrollers
MCF5223x: Integrated ColdFire V2 Ethernet MicrocontrollersMCF5223x: Integrated ColdFire V2 Ethernet Microcontrollers
MCF5223x: Integrated ColdFire V2 Ethernet Microcontrollers
 
Digital Electronics – Unit V.pdf
Digital Electronics – Unit V.pdfDigital Electronics – Unit V.pdf
Digital Electronics – Unit V.pdf
 
UNIT-V (PIC16F877-Microcontrollers).pdf
UNIT-V (PIC16F877-Microcontrollers).pdfUNIT-V (PIC16F877-Microcontrollers).pdf
UNIT-V (PIC16F877-Microcontrollers).pdf
 
Study On MCP23S09 I/O Expander with SPI Interface
Study On MCP23S09 I/O Expander with SPI InterfaceStudy On MCP23S09 I/O Expander with SPI Interface
Study On MCP23S09 I/O Expander with SPI Interface
 

Último

From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 

Último (20)

From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 

Introduction to embedded systems

  • 1. Introduction to Embedded Systems Embedded system board hardware architecture.
  • 2. 1. What is Embedded Systems • Embedded Systems or Electronics systems that include an application Specific Integrated Circuit or a Microcontroller to perform a specific dedicated application. • Embedded System is pre-programmed to do a specific function while a general purpose system could be used to run any program of your choice. Block diagram of a typical embedded system is shown in fig.
  • 3. 2. Typical embedded board structure For instance board Embest SBC6000X showed on fig.
  • 4. 3. Microcontroller Core Architecture We will consider microcontroller core based on most popular architecture ARM7TDMI. The ARM7TDMI core is based on the Von Neumann architecture with a 32- bit data bus that carries both instructions and data. Load, store, and swap instructions can access data from memory. Data can be 8-bit, 16-bit, and 32-bit. Operating modes The ARM7TDMI core has seven modes of operation: • User mode is the usual program execution state • Fast Interrupt (FIQ) mode supports data transfer or channel processes to allow very fast interrupt processing and to preserve values across interrupt calls • Interrupt (IRQ) mode is used for general purpose interrupt handling • Supervisor mode is a protected mode for the operating system • Abort mode is entered after a data or instruction prefetch abort • System mode is a privileged user mode for the operating system • Undefined mode is entered when an undefined instruction is executed
  • 5.
  • 6. Bancked - mean providing multiple copies of a register at the same address. LR - R14 register is Link Register for store context return address SP - R13 register is Stack Pointer Current Program Status Register (CPSR) Mode bits - shows which mode is current System, User, Fiq, Irq, Undefined, Abort I and F bit - control the enabling and disabling of interrupts T bit - shows is core in the thumb mode ("1" 16-bit instruction set, "0" 32-bit)
  • 7. 4. Input/Output Ports The digital signal is waveform that switches between two voltage levels representing the two states of a Boolean value (False - "0" and True - "1"). (1) low level mean "0", (2) high level Note: CMOS Vdd can be 1.8; 2.5; 3,3; 5V mean "1", (3) rising edge, and (4) TTL Vcc is 5V falling edge. 4.1 What is digital signal? Technology Low Level "0 " High Level "1" CMOS 0 V to VDD/2 VDD/2 to VDD TTL 0 V to 0.8 V 2 V to VCC
  • 8. 4.2 IO port control registers • Enable/Disable Register - used to connect pin to general purpose IO port or to embedded peripheral. 0/1 - mean connect/ disconnect • Output Register - used to control pin level 0/1. • Input Register - to read pin level 0/1. • Connect/Disconnect Pull-Up Register - used in case pin is input to enable/disable pull-up resistor. Pull-up resistors are used in electronic logic circuits to ensure that inputs to logic systems settle at expected logic levels if external devices are disconnected or high-impedance is introduced • Enable/Disable Open Drain Mode - to enable/disable open drain(collector) mode Open drain (collector) mode - give possibility connect external pull-up resistor to alternative voltage. For instance to get output with digital level 5V on microcontroller with power supply 3.3V through external pull-up to bus 5V. • Enable/Disable Interrupt - this feature for pins configured as input to enable/disable interrupt in case signal level is changed
  • 9. 4.3 Typical IO port application IO ports can be used as for embedded peripheral purpose and for control some external loads (output) and acquire signals from sensors, buttons (input). Below is showed typical input usage to acquire signal from button.
  • 10. Output port pin has current limitation refer to electrical characteristic documentation. Due to current limitation to avoid port destruction additional external transistor should be used to switch led. On the next fig showed how to control led by output pin.
  • 11. 5. Interrupts There are two types of interrupts available on ARM processor. The first type is the interrupt caused by external peripherals (FIQ, IRQ) and the second type is caused by software SWI assembler instruction. External Peripheral interrupt type has two priority level: •FIQ - for source that requires fast response time for example DMA •IRQ - for general purpose interrupts like periodic timers Note: FIQ interrupts have the highest priority, if a higher priority interrupt goes active, the current ISR is interrupted and the higher-priority ISR is executed.
  • 12. 6. Serial Interfaces A USART (Universal Synchronous/Asynchronous Receiver/Transmitter) is serial interface peripheral that facilitates communication through RS-232 or RS- 485 interface. The USART controller based on shift register Tx/Rx. Additional register used to define clock which specify baud rate. The baud rate of USART is depend on physical layer, common usage speed is 1200, 9600, … 115200. Frame format is shown below. USART module has two pins Rx - to receive data and TX - to transmit. In case node1 connect to node2 - Rx1 should be crosswise connected to Tx2 and Tx1 to Rx2. 6.1 USART
  • 13. The SPI circuit is a synchronous serial data link that provides communication with external devices in Master or Slave Mode. It also used for communication between processors. SPI in comparison with USART is faster (up to ~50Mbps) and has additional signal line “clock”. The SPI system consists of two data lines and two control lines: • Master Out Slave In (MOSI): This data line supplies the output data from the master shifted into the input(s) of the slave(s). • Master In Slave Out (MISO): This data line supplies the output data from a slave to the input of the master. • Serial Clock (SCK): This control line is driven by the master and regulates the flow of the data bits. The master may transmit data at a variety of baud rates. • Slave Select (SS): This control line allows slaves to be turned on and off by master. 6.2 SPI (Serial Peripheral Interface)
  • 14. Fig: SPI data time diagram CPOL 0:1 – set an polarity of clock signals ; CPHA 0:1 – set phase clock mode The SPI implementation circuit is showed on fig below. There is one master device and three slave devices that handled by NPCS0, NPCS1, NPCS3 signals.
  • 15. 6.3 I2C (I-two-C interface) The I2C interface is a multi-master serial single-ended computer bus invented by Philips used for attaching low-speed peripherals to embedded system. Not to be confused with the term Two Wire Interface which only describes a compatible hardware interface. The I²C in comparison with SPI is using addressing instead NSS (slave select) signal. I2C addressing mode can be 7-bit or 10-bit. The I2C bus support next speed modes:  10kbit/s – Low Mode  100 kbit/s - Standard Mode  400 kbit/s - Fast mode. The I²C uses only two bidirectional open-drain lines, Serial Data Line (SDA) and Serial Clock (SCL), pulled up with resistors (about 10kOm). Typical voltages used are +5 V or +3.3 V. The address and the data bytes are sent most significant bit first. The start bit is indicated by a high-to-low transition of SDA with SCL high; the stop bit is indicated by a low-to-high transition of SDA with SCL high. All other transitions of SDA take place with SCL low.
  • 16. The I2C transfer sequence next: The Master is sending a start bit followed by the 7-bit address, the last address e bit R/W representing whether it wishes to write(0) or read(1) from the Slave. The Slave will respond with an ACK bit (active low for acknowledged) for that address. The master then continues in either transmit or receive mode (according to the read/write bit it sent), and the Slave continues to receive or transmit. R/W – bit define read mode in case level “1” and write mode if “0”. ACK/NACK – if Slave set in bit ACK “0” that mean acknowledge, otherwise level “1” mean decline.
  • 17. 7. SRAM and SDRAM what is the difference? The SRAM or (Static Random Access Memory) is static type of memory. It is called “static” because it does not have to be refreshed. SRAM access times are very fast because it doesn’t need to pause between cycle times. It is very expensive memory. The SDRAM or (Synchronous Dynamic Random Access Memory) is a type of computer storage that needs frequent refreshing and has a synchronous interface. It is slower than SRAM because it refers to the microprocessor clock before responding thus synchronizing to the system bus and requiring a pause between cycles. Below showed SRAM/SDRAM table comparison: Attribute SRAM SDRAM Speed Fast Slower than SRAM Price Expensive Chip Capacity ~4Mbit ~4Gbyte Power consumption Low High(due to refreshing)
  • 18. 8. NAND and NOR what is the difference? NOR offers faster read speed and random access capabilities as it has both Addressing and Data Bus,that making it suitable for execute in place. From last property NOR flash used for code storage in embedded devices. Software typically does not have to worry about error correction or bad blocks. NOR flash is lower density and has lower write speed than NAND flash. NAND flash is faster but does not support execute in place. Additionally, bad block management is required for NAND flash as well as complex error correction. NAND flash is available at much higher densities than NOR flash and is a lot cheaper. Below is table comparison: Attribute NOR NAND Capacity Up to 16Mbit Up to 4Gbit Speed Fast Read Slow Write Erase Very Slow Fast Read Fast Write Fast Erase Interface connection Address and Data Bus Data bus combined with address, toggling CLE, ALE Access Random Sequential by blocks