Professional Documents
Culture Documents
CSD3010
Unit - I
By
N.D. Patel
Email: narottamdaspatel@vitbhopal.ac.in
Linkden: https://www.linkedin.com/in/ndpatel18/
Contact Number: 9450095800 1
Cyber Physical Systems
CSD3010
Unit - I
2
Cyber Physical Systems
CSD3010
Unit - I
3
Cyber Physical Systems
CSD3010
4
Network Security Fundamentals
Introduction to Cyber Physical Systems:
• With the exponential growth of cyber-physical systems (CPS), new security challenges have
emerged. Various vulnerabilities, threats, attacks, and controls have been introduced for the
new generation of CPS.
Introduction to Cyber Physical Systems:
Introduction to Cyber Physical Systems:
https://ieeexplore.ieee.org/abstract/document/7924372/?casa_token=-
MnrDaghpnAAAAAA:AmV4VilksYXz8jIlFZ03jkoWXZ2ua6lZ1chXn54Kq9zwLgFGPfT5gyMgi9o_FZ0ICagZ3AM
Introduction to Cyber Physical Systems:
https://ieeexplore.ieee.org/abstract/document/7924372/?casa_token=-
MnrDaghpnAAAAAA:AmV4VilksYXz8jIlFZ03jkoWXZ2ua6lZ1chXn54Kq9zwLgFGPfT5gyMgi9o_FZ0ICagZ3AM
2023 Emerging Technology Adoption Roadmap
https://www.gartner.com/en/articles/what-s-new-in-the-2023-gartner-hype-cycle-for-emerging-technologies
Cyber + Physical Systems
The term “cyber-physical systems” emerged in 2006, coined by Helen Gill at the National Science
Foundation in the US.
• CPS technologies are transforming the way people interact with engineered systems,
just as the Internet has transformed the way people interact with information.
Small Computer
Connected
Industrial System
Network
Big Complex
System
Advanced
Manufacturin Robo
g t
Automotive CPS
• Safer Transportation
• Reduced Emissions
• Smart Transportation
• Energy Efficiency
• Climate Change
• Human-Robot Collaboration
Example CPS System
• STARMAC Ǫuadrotor Aircraft
• Autonomous Rotocraft
STARMAC Design Block
• https://www.raspberrypi.org/magpi/
• https://blog.adafruit.com/category/raspberry-pi/
• https://iccps.acm.org/2024/
• https://scholar.google.com/scholar?hl=en&as_sdt=0%2C5&q=ACM%2FIEEE+INTERNATI
ONAL+CONFERENCE+ON+CYBER-PHYSICAL+SYSTEMS&btnG=
Introduction to Microcontrollers
26
Introduction to Microcontrollers
A microcontroller (MCU) is a small computer
on a single integrated circuit consisting of a
relatively simple central processing unit (CPU)
combined with peripheral devices such as
memories, I/O devices, and timers.
By some accounts, more than half of all
CPUs sold worldwide are microcontrollers.
Such a claim is hard to substantiate because
the difference between microcontrollers
and general- purpose processors is
indistinct.
27
Microcontrollers
An Embedded Computer System on a Chip
A CPU
Memory (Volatile and Non-Volatile)
Timers
I/O Devices
Typically intended for limited energy usage
Low power when operating plus sleep modes
Where might you use a microcontroller?
28
What is Control?
Sequencing operations
Turning switches on and off
Adjusting continuously (or at least finely) variable quantities to
influence a process
29
Microcontroller vs Microprocessor
A microcontroller is a small computer on a single integrated circuit
containing a processor core, memory, and programmable input/output
peripherals.
30
Microcontroller vs Microprocessor
31
Types of Processors
In general-purpose computing, the variety of instruction set architectures
today is limited, with the Intel x86 architecture overwhelmingly dominating
all.
There is no such dominance in embedded computing. On the contrary, the
variety of processors can be daunting to a system designer.
Do you want same microprocessor for your watch, autonomous vehicle,
industrial sensor?
32
How to choose micro-processors/controllers?
Things that matter
Peripherals
Concurrency & Timing
Clock Rates
Memory sizes (SRAM &
flash)
Package sizes
33
Types of Microcontrollers
34
DSP Processors
Processors designed specifically to support numerically intensive
signal processing applications are called DSP processors, or DSPs
(digital signal processors).
Signal Processing Applications: interactive games; radar, sonar, and
LIDAR (light detection and ranging) imaging systems; video analytics (the
extraction of information from video, for example for surveillance); driver-
assist systems for cars; medical electronics; and scientific instrumentation .
35
Multiply-Accumulate Instructions
Digital Signal Processors provide a fast and efficient multiply- accumulate
(MAC) instruction
Typically including a relatively large accumulator
They also typically use a Harvard memory access architecture
They may include auto-increment addressing modes
They may support circular buffer addressing
Efficient implementation of delay lines
They may support zero-overhead loops
36
Programmable Logic Controller (PLC)
A microcontroller system for industrial automation
Continuous operation
Hostile environments
originated as replacements for control circuits using electrical relays to
control machinery
19
Example: explained
Start/Run is a normally open contact
Stop is normally closed, indicated by the slash
It becomes open when the operator pushes the switch.
When start is pushed, electricity flows
Both Start and Run contacts close so that Motor runs
When Start is released, Motor continues to run
When Stop is pressed, current is interrupted and both Run contacts become
open and motor stops
Contacts wired in parallel perform a logical OR function, and contacts
wired in series perform a logical AND.
39
GPUs
A graphics processing unit (GPU) is a specialized processor designed
especially to per- form the calculations required in graphics rendering.
Most used for Gaming (earlier days)
Common programming language: CUDA
NVIDIA?
NVIDIA GeForce RTX 4090
NVIDIA GeForce GTX 660
AMD Radeon RX 7900 XTX
40
Parallelism vs Concurrency
Embedded computing applications typically do more than one thing “at a
time.”
Tasks are said to be “concurrent” if they conceptually execute
simultaneously
Tasks are said to be “parallel” if they physically execute simultaneously
Typically multiple servers at the same time
41
Imperative Language
42
Program Dependency – Sequential Consistency
No dependency between lines
3 and 4
43
Thread Mapping on Processor
OS Dependent Scheduler
Static Mapping
Basic Lowest Load (fill in Round Robin
fashion)
Extended Lowest Load
44
Performance Improvement
Various current architectures seek to improve performance by finding and
exploiting potentials for parallel execution
This frequently improves processing throughput
It does not always improve processing latency
It frequently makes processing time less predictable
Many embedded applications rely on results being produced at
predictable regular rates
Embedded results must be available at the right time
45
Parallelism
Temporal Parallelism – Pipelining
Spatial Parallelism –
Superscalar
VLIW
Multicore
46
RISC and CISC Architectures
CISC – Complex Instruction Set Computer
Multi-clock complex instructions
RISC – Reduced Instruction Set Computer
Simple instructions that can be executed within one cycle
47
5 Cycles of RISC Instruction Set
48
Pipelining in RISC
Zero
Add
Decod
memor
data
e
Mux
Mux
Instructio
memory
y
ALU
P Registe
bank
C
n
50
Pipelining Hazard
Data Hazard
Control Hazard
Out-of-order Execution
Speculative Execution
51
Out-of-order Execution
hardware hardware
resources: A B C D E resources: A B C D
instruction A B C D E instruction A E B C D
interlock
memory register A B C D E memory register E
B C D
bank read 1 A B C D E bank read 1 A A E B C D
register bank read A B C D E register bank read A E B C D
2 A B C D E 2 A E B C D E
ALU 1 2 3 4 5 6 7 8 9 ALU
1 2 3 4 5 6 7 8 9 10 11
data data 12
cycl
memory register e memory register cycle
bank write
Reservation Reservation
bank write
53
CISC Instruction
Texas Instruments TMS320c54x family of DSP processors
Code
RPT numberOfTaps - 1
MAC *AR2+, *AR3+, A
RPT: zero overhead loops
MAC : Multiply accumulate
a := a + x ∗ y
AR2, AR3 are registers
A is the Accumulator
54
Multicore Architecture
Combination of several processors in a single chip
Real-time and Safety critical tasks can have dedicated processors
Heterogeneous multicore
CPU and GPUs together
55
FPGAs
Field Programmable Gate Arrays
Set of logic gates and RAM blocks
Reconfigurable / Programmable
Precise timing
Zyn 40
Fixed and Floating Point Numbers
Programs may use float or double
Many embedded processors do not have floating point arithmetic
hardware
Conversion required, which makes it slow
Imaginary Binary Point is considered for computation
Binary point separates bits
Decimal point separates digits
Format x.y representation indicates
x bits left & y bits right of binary point
57
Programmers need to guard
Overflow – since higher order bits are discarded
Truncation, if bits are chosen before operation
Rounding – rounds to nearest full precision after operation
58
History of ARM Processor
59
ARM Cortex Processors
ARM Cortex-A family:
Applications processors
Support OS and high-performance
applications Such as Smartphones,
Smart TV
ARM Cortex-R family:
Real-time processors with high
performance and high reliability
Support real-time processing and
mission-critical control
ARM Cortex-M family:
Microcontroller
Cost-sensitive, support SoC
60
Raspberry Pi
62
ARM Peripherals
63
Modeling Cyber-Physical Systems
https://
link.springer.com/
chapter/
10.1007/978-3-
319-76935-6_5
65
Hybrid Cyber-Physical Systems
66
Cyber-Physical Systems in Smart Grid
67
Modeling Cyber-Physical Systems: Example
68
Quantum Cyber-Physical Systems
00
01
10
11
Two qubits can represent
the exact same Four states
69
ML in Embedded and Cyber-Physical Systems
70
ML in Embedded and Cyber-Physical Systems
https://aicps.eng.uci.edu/machine-learning-in-embedded-cyber-physical-systems/
71
ML in Embedded and Cyber-Physical Systems
https://aicps.eng.uci.edu/machine-learning-in-embedded-cyber-physical-systems/
72
Test bed for power side-channel data collection
https://aicps.eng.uci.edu/machine-learning-in-embedded-cyber-physical-systems/
73
Test bed for power side-channel data collection
https://aicps.eng.uci.edu/machine-learning-in-embedded-cyber-physical-systems/
74