1. Mr. Sidhant Sanjay Kulkarni
Dept. of Mechatronics Engg.
Introduction to Microcontroller
and its architecture
2. Contents
Introduction to the concept of microcontrollers,
RISC, CISC, Harvard and Von Neumann
architectures. Role of embedded systems. Selection
of microcontrollers, variants of different
Microcontroller family and their features.
Applications of microcontrollers. Architecture of
generalized Microcontroller. Working of
Microcontroller, Concept and future trends in
Microcontroller, Concept of IP core.
3. Introduction to Microcontroller
A microcontroller is an electronic device belonging
to the microcomputer family.
These are fabricated using the VLSI technology on
a single chip.
There are microcontrollers available in the present
market with different word length starting from 4 bit,
8 bit, 64 bit to 128 bit.
Microcontroller is considered as the backbone
of Embedded Systems & it’s most important feature
is: “It can think”.
A Microcontroller looks like a simple electronics
chip, but in actual its too powerful (also called
Embedded Computer) because its programmable.
Using programming code, we can control all I/O pins
4. Introduction to Microcontroller
In a broader sense, the components which
constitute a microcontroller are the memory,
peripherals and most crucially a processor.
Microcontrollers are present in devices where the
user has to exert a degree of control.
They are designed and implemented to execute a
specific function such as displaying integers or
characters on an LCD display module of a home
appliance.
5. Introduction to Microcontroller
Application of microcontrollers is myriad.
In simpler terms, any gadget or equipment which
has to deal with the functions such as measuring,
controlling, displaying and calculating the values
consist of a microcontroller chip inside it.
They are present in almost all the present day
home appliances, toys, traffic lights, office
instruments and various day-to-day appliances.
8. Architecture of Microcontroller
The most important part of a microcontroller is a central
processing unit with a word length ranging from 4-bit to
64-bit and in some modern microcontrollers the word
length goes even beyond the limit of 64-bit.
A timer is one other constituent of a microcontroller. E.g.
Watchdog timer.
Memory spaces such as RAM, ROM, EEPROM, EPROM
are there to store data and programs.
For data storage, volatile memory RAM is used while for
the program and operating parameter storage ROM and
other memory spaces are used.
9. CPU: Being regarded as the brain of the microcontroller, central
processing unit fetches, decodes and executes the instructions.
It coordinates various activities taking place in the
microcontroller.
I/O ports: There are several parallel input/output ports in a
microcontroller. They are used to interface various peripherals
such as printers, external memories, LEDs and LCDs to the
microcontroller. Apart from parallel ports, there are serial ports to
interface serially connected peripherals with the microcontroller.
Memory: As in the case of a microprocessor, a microcontroller
has spaces for memories such as RAM, ROM including EEROM
and EPROM. It also allocates a certain amount of flash memory
to store program source code.
Timers and counters: These are the fascinating constituent
parts of a microcontroller. Timers and counters are used in
operations which include modulation, clock functions, frequency
generation and measuring and pulse generation.
Analog to digital converters (ADCs): Such converters are
useful while converting the output of a sensor which would be in
analog form.
Digital to analog converter (DAC): The working of a DAC is
just the reverse of an analog to digital converter. As it is obvious,
10. Features of a Microcontroller
The main advantage of a CISC (complex instruction set
computer) architecture, with which the modern
microcontrollers are built, is the macro-type instructions.
A macro instruction can be used in a program replacing a
number of instructions.
Latest microcontrollers are operated at lesser power
consumption. Usually, they can support a working voltage of
1.8-5.5 V.
Advanced memory is another feature of a microcontroller. Use
of ROM memories like EEPROM and EPROM (flash memory)
make it more reliable and user-friendly. While EEPROM is a
relatively slow memory, EPROM is faster. Fact that it allows
more erase/write cycles also makes it more usable.
11. Advantages
The main advantage of a microcontroller is that
the low cost with all the integral parts mounted
together on a single chip.
The design makes it more compact and easy to
use. The easiness of using a microcontroller and
the relatively easy maintenance process also
make it more reliable.
Almost all the pins in a microcontroller are
programmable and it makes the microcontroller a
lot user-friendly.
Simplicity while interfacing ROM, RAM, and I/O
ports. Easiness of troubleshooting and a minimal
time requirement for various operations are other
12. Disadvantages
Since it contains all the components on a single
chip, microcontrollers are having relatively
complex architecture. Microcontrollers are not
suitable to interface high power devices directly
and they can only perform the limited number of
operations simultaneously.
13. Comparing Microcontroller with a
Microprocessor
Microprocessor
It has only the CPU inside; i.e. the processing powers
such as Intel’s Pentium 1,2,3,4 core 2 duos, i3, i5 etc.
Don’t have RAM, ROM and other peripheral on the chip.
The system designer has to add them externally to make
them functional.
Application includes desktop PCs, laptops, notepads etc.
Applications are where tasks are unspecific like
developing software, games, websites, photo editing,
creating documents etc.
Since microprocessors cannot be used stand alone as it
needs RAM, ROM and other peripherals the system that
uses microprocessors is costlier than a microcontroller.
The clock speed of the microprocessor is quite high as
compared to the microcontroller. This can operate above
1 GHz as they perform complex tasks.
14. Comparing Microcontroller with a
Microprocessor
Microcontroller
In a microcontroller CPU, RAM, ROM, and other
peripherals are embedded on a single chip.
At times it is termed a mini computer or a computer on a
single chip.
Some giants in the manufacturing business of
microcontrollers are ATMEL, microchip, TI, Freescale,
Philips, Motorola etc.
Designed to perform specific tasks. ie, the relationship
between the input and output is defined.
Since the applications are very specific, they need small
resources like RAM, ROM, I/O ports and hence can be
embedded on a single chip.
The clock speed of a microcontroller varies from a few
MHz to 30-50 MHz.
15. Comparing Microcontroller with a
Microprocessor
Microcontroller Microprocessor
Microcontrollers are used to execute
a single task within an application.
Microprocessors are used for big
applications.
Its designing and hardware cost is
low.
Its designing and hardware cost is high.
Easy to replace. Not so easy to replace.
It is built with CMOS technology,
which requires less power to operate.
Its power consumption is high because it
has to control the entire system.
It consists of CPU, RAM, ROM, I/O
ports.
It doesn’t consist of RAM, ROM, I/O
ports. It uses its pins to interface to
peripheral devices.
17. Applications
Peripheral controller of a PC
Robotics
In bio-medical equipment
In communication system
In automobiles
In fire detection devices
In light and temperature sensing and controlling
devices
Process control and industrial automation devices
In measuring devices such as volt and current
meters
18. Various Manufacturers of Microcontrollers
Analog devices- 8051 microcontrollers with the 12-
bit analog to digital converter.
Atmel- 8051, AT91, AVR, AVR32
Freescale semiconductor-family of microcontrollers
ranging from 8-bit to 32-bit
Infineon technologies- 8-bit microcontrollers based
on 8051 and 16-bit ROM and OTP microcontrollers
Maxim Integrated Products- 75 MHz single-cycle
flash 8051 microcontrollers, some low power 16-bit
microcontrollers
Microchip – wide array of 8-bit microcontroller
families including PIC12, PIC16, PIC18, 16- bit PIC
24 microcontroller and PIC32 which is 32-bit
microcontrollers.
19. Instruction Set
Based on the instruction set configuration, the
microcontroller is further divided into two
categories.
CISC − CISC stands for complex instruction set
computer. It allows the user to insert a single
instruction as an alternative to many simple
instructions.
RISC − RISC stands for Reduced Instruction Set
Computers. It reduces the operational time by
shortening the clock cycle per instruction.
RISC Architechture is considered the most
advanced Microcontrollers Architecture
20. Harvard and Von Neumann Architecture
Von Neumann and Harvard architecture are
known to be the two basic models on which
computer systems are based.
The significant difference between Von Neumann
and Harvard architecture arises according to the
way the CPU is separated from the memory.
In both these architecture, two different ways are
used by which memory is accessed by the CPU.
21. Harvard and Von Neumann Architecture
The Von Neumann architecture is also known
as Princeton architecture was proposed by John Von
Neumann in the year 1945 and it is an architecture where
the data and programs are subjected to shared memory
i.e., are stored in the same memory block.
As against, Harvard architecture is such an approach
where data and instructions do not share the same
memory i.e., are present in different memory blocks.
It is generally said that Harvard was proposed to deal
with the limitation of Von Neumann architecture
22. Harvard and Von Neumann Architecture
Basis for
Comparison
Von Neumann
Architecture
Harvard Architecture
Basic Data and instructions
reside within a single
memory unit.
Data and instruction
are provided 2 different
memory units.
Based on Stored program
computer concept
Harvard Mark I relay
based model
Memory system Single Dual
Required space Less Comparatively more
Set of address/ data
bus
One Two
Development cost Low Comparatively more
Efficiency Less More
Execution speed Slow Comparatively fast
23. Harvard and Von Neumann Architecture
Basis for
Comparison
Von Neumann
Architecture
Harvard Architecture
Operation Simple Complex
Performance offered Low Comparatively high
Clock cycle Single instruction is
executed in minimum two
clock cycles.
Single instruction is
executed in one clock
cycle.
Feature Data transfer and
instruction fetching do not
occur simultaneously.
Data transfer and
instruction fetch take
place at the same time.
Space utilization Good Not so good
Applications PCs, workstations,
notebooks, etc.
Microcontrollers, digital
signal processing, etc.
24. Definition of Von Neumann Architecture
A computer architecture that uses a single memory
unit within which both data and instructions get
stored is known as Von Neumann architecture. The
figure below represents the architectural
representation of the Von Neumann Model:
25. Definition of Von Neumann Architecture
There are three major components that constitute
this architecture:
CPU
Memory
I/O interface
26. Definition of Von Neumann Architecture
The central processing unit is composed of the
control unit, arithmetic and logic unit, and registers.
The control unit is responsible for generating
control signals based on the order of executing the
instructions.
This means that the control signals are provided to
the various components within the architecture for
the proper flow of information.
The ALU is responsible for executing the
mathematical operations. While the registers are
responsible for temporarily storing data and
instructions.
27. Definition of Von Neumann Architecture
The memory unit also serves as a crucial part of the
overall system as it stores both data as well as
codes.
A computer’s memory is mainly classified as RAM
and ROM.
RAM is the temporary storage unit that stores data
along with general-purpose instructions.
While ROM is a permanent type of memory that
holds the instructions responsible for booting up the
28. Definition of Von Neumann Architecture
Like we have said that in this architecture, data and
instructions both reside in a single memory unit
hence a single set of buses is used by the CPU to
access the memory.
After the execution of the program, data gets stored
in memory from where it is provided to output
devices.
29. Definition of Harvard Architecture
A computer architecture where the memory unit is
divided into two parts for individually storing data
and instructions is known as Harvard architecture.
This means, unlike Von Neumann architecture,
here data memory and instruction memory is in
separate format. The figure below shows Harvard
Model:
30. Definition of Harvard Architecture
Here in this architecture, the CPU operates in a
somewhat similar manner as in Von Neumann
architecture.
But as here two separate memory units are used
thus separates buses are used for data transferring
and instruction fetching.
Thus, execution speed is very much faster than Von
Neumann architecture.
31. Definition of Harvard Architecture
In this approach, efficient resource utilization occurs
as instructions bits are sometimes more than the
data bits thereby permitting different cell sizes.
Also, the use of separate memories for both data
and instructions helps in the minimization of
execution time.
However, in the Harvard model, the central
processing unit present must be more efficient so
that it can handle two sets of buses and allows
simultaneous data transfer and instruction fetching.
32. Key Differences Between Von
Neumann and Harvard Architecture
The key factor of differentiation between Von
Neumann and Harvard architecture is that in Von
Neumann architecture a single memory containing
both data and instructions is accessed by the CPU.
On the contrary, in Harvard architecture, individual
memory units are present for data and instructions
that are accessed by the processor.
The presence of a single memory unit makes the
system composed of Von Neumann architecture
quite compact in comparison to the system with
Harvard architecture as it has more than one
memory thus is bulky.
33. Key Differences Between Von
Neumann and Harvard Architecture
In Princeton architecture, a common bus is used for
data and instructions. While in Harvard architecture
separate set of buses is used for transferring the data
and instruction fetching as two separate memory units
exist here.
The cost to develop a system with Von Neumann
architecture is comparatively less than the developing
cost of a system with Harvard architecture.
One of the important features of Harvard architecture is
that it offers data transfer and instruction fetching from
the memory at the same time because it comprises two
sets of buses for the operation to take place. As against,
this is not the case with Princeton architecture as the
single bus is used for both data transfer and instruction
34. Key Differences Between Von
Neumann and Harvard Architecture
The Von Neumann architecture needs
less space as it has a single memory unit but the
Harvard architecture comparatively takes more
space due to multiple memory units.
Von Neumann architecture exhibits a
slower execution speed because it does not permit
simultaneous processing while the execution speed
offered by Harvard architecture is more.
Though the speed of executing operations is less in
the case of Von Neumann, here
the implementation is quite simple however
Harvard architecture offers comparatively complex
operation.
35. Key Differences Between Von
Neumann and Harvard Architecture
The hardware requirements of the two architectures are
also different. In Von Neumann architecture a single
memory is accessed thus hardware requirement is
low. On the contrary, in Harvard, two memory units are
accessed thus hardware requirements will obviously be
high.
The utilization of space within the memory is a major
issue in the Harvard model as here the data and
instructions are stored separately thus, even if some
space is left in data memory, no instructions can utilize
that space. However, the space utilization factor is
comparatively better in the Von Neumann model
because both data and instructions are stored in the
same memory unit.
In Von Neumann architecture, an instruction execution
takes place using two clock cycles. But with proper
pipelining, in a single clock cycle, a single instruction
can get executed in Harvard architecture.
36. Conclusion
Thus, from the above discussion, it can be
concluded that the Harvard architecture is
somewhat an improvisation in Von Neumann
architecture by offering a comparatively better
design thereby providing simultaneous execution.
However, various modern systems do not offer
physical separation between data and program
memory thus, is said that these are based on Von
Neumann architecture.
37. Roll of Embedded System
An embedded system is a microprocessor- or
microcontroller-based system of hardware and
software designed to perform dedicated functions
within a larger mechanical or electrical system.
38. Roll of Embedded System
An embedded system is a combination of computer
hardware and software designed for a specific function.
Embedded systems may also function within a larger
system.
The systems can be programmable or have a fixed
functionality.
Industrial machines, consumer electronics, agricultural and
processing industry devices, automobiles, medical
equipment, cameras, digital watches, household
appliances, airplanes, vending machines and toys, as well
39. Working of Embedded System
Embedded systems always function as part of a
complete device that's what's meant by the
term embedded.
They are low-cost, low-power-consuming, small
computers that are embedded in other mechanical or
electrical systems.
Generally, they comprise a processor, power supply,
and memory and communication ports.
Embedded systems use the communication ports to
transmit data between the processor and peripheral
devices often, other embedded systems using a
communication protocol.
The processor interprets this data with the help of
minimal software stored on the memory. The software
40. Characteristics of Embedded System
The main characteristic of embedded systems is that they
are task-specific.
Typically, consist of hardware, software and firmware;
Can be embedded in a larger system to perform a specific
function, as they are built for specialized tasks within the
system, not various tasks;
Can be either microprocessor-based or microcontroller-
based both are integrated circuits that give the system
compute power.
Are often used for sensing and real-time computing in
internet of things (IoT) devices, which are devices that are
internet-connected and do not require a user to operate
Can vary in complexity and in function, which affects the
type of software, firmware and hardware they use
41. Selection of Microcontroller
A microcontroller (MCU), is the smallest and most
basic computer. Running on a single chip, it has a
CPU, memories (RAM and ROM), and interfaces
(input/output ports) for additions like video, audio,
USB, and cameras.
Unlike a microprocessor, which serves more
generalized applications, a microcontroller aims at
more specific applications.
Because microcontrollers are suitable for specific
tasks, it is essential to choose a microcontroller that
is most appropriate for a project. There are many
factors to consider.
42. Selection of Microcontroller
Power efficiency. There is a trade-off between
processing performance and power consumption: a
device with higher processing power will consume
more energy.
Therefore, if your microcontroller is wireless and
running on a rechargeable battery, you need to
weigh sacrificing power efficiency against getting
more processing power, or vice versa. Some power-
efficient microcontrollers include
STMicroelectronics’ STM32 series, NXP’s Kinetis
L series, Renesas’ H8 Super Low Power series,
Cypress’ PSoC 6 series, Microchip’s eXtreme Low
Power PIC series, and Texas
43. Selection of Microcontroller
Temperature tolerance. Depending on the
environment in which your microcontrollers operate,
you may want devices that withstand extreme
temperature. There will be a trade-off between
temperature tolerance and cost.
Security. Hacking which targets IoT devices is
rising, a threat that is especially relevant to
microcontrollers used in automobiles.
In response, microcontroller makers are
implementing layers of security such as
cryptography and physical security. Now, users can
purchase microcontrollers that have been certified to
the latest security standards or use MCUs with on-
chip secure hardware.
44. Selection of Microcontroller
Hardware architecture. A microcontroller’s packaging
directly influences its size and performance.
Dual in-line packaging is the most common type.
Small-outline transistors have a small footprint, and
quad flat packs take up more areas but less vertical
space.
Wafer level chip-scales are much smaller and pack
in more processing power but are more expensive to
manufacture.
Flat no-lead packages are better in heat diffusion.
Ball grid arrays (BGAs) have high performance due
to the compact package but also cost more to
45. Selection of Microcontroller
Processing power. How much processing power
do you require for the task, will a single core
processor suffice, or do you need a dual-core? A
multicore processor will be significantly faster, but it
will also consume more energy. Also, will a graphics
processing unit (GPU) be necessary?
Memory. The amount of memory (RAM and ROM)
you need will depend on the programs you will be
running. More programs need more random access
memory (RAM). In addition, a GPU will require not
only more RAM but faster read/write time as well.
46. Selection of Microcontroller
Hardware interface. The nature of the task will
dictate the need for hardware interfaces such as
USB, Wi-Fi, Bluetooth, audio, video, or camera.
Software architecture. Some microcontrollers are
operable on multiple OSs, and others are not. If you
need to scale, it is better to use the same software
architecture to increase interoperability.
Cost. Microcontrollers fall within a wide price range,
from a hundred units for a few dollars to a few
dollars per unit. If you want to scale, you need to
consider the overall cost versus the individual
performance power of a microcontroller.
47. variants of different Microcontroller
family and their features.
Nowadays different types of microcontrollers are
available in the market with various features
those are like:
PIC Microcontroller
ARM Microcontroller
8051 Microcontroller
AVR Microcontroller
MSP Microcontroller
48. PIC Family
PIC Microcontroller
PIC is a family of microcontrollers manufactured by
microchip technology, originally produced by the
general instrument’s microelectronics division. The
name PIC originally referred to Peripheral Interface
Controller, and currently, it is expanded as
Programmable Intelligent Computer.
49. variants of different Microcontroller
family and their features.
Core features
High- performance RISC CPU
Up to 8k × 14 words of FLASH program memory
35 instructions
368×8 static RAM-based data memory
Up to 256 × 8bytes of EEPROM data memory
Interrupt capability (up to 14 sources)
Three addressing modes (Direct, Indirect, relative)
Power-on Reset (POR)
Harvard architecture memory
Power saving SLEEP mode
Wide operating voltage range:2.0V to 5.5V
High sink/source current:25mA
Accumulator based machine
50. variants of different Microcontroller
family and their features.
Peripheral features
3Timer/Counters
2 Capture, Compare, PMW modules
10bit channel analog to digital converter
USART with 9bit address direction
Synchronous serial port including master mode and
I2C Master/Slave
8bit parallel slave port
51. ARM Family
ARM Microcontroller
Arm full form or stands Advanced RISC Machine,
originally acorn RISC machine is a family of reduced
instruction set computing (RISC) architectures for
computer processors, configured for various
environments. It is 1 of the extensive and most
licensed processor cores in the world.
52. ARM Family
Features Of ARM Microcontroller
There are only 25basic instruction types in this designed
processor.
Most of the operations are implemented through registers
All instructions can have some conditions with them.
There can be various modes of addressing in this
processor.
Manual stock manipulation is done. Stack addressing and
subroutines are explicitly programmed.
The 32-bit mode microprocessor made it possible to have
access to memory and data manipulation saved in these
32-bits.
The address range of this processor is 26bit wide. It
allows 64megabytes of memory to be accessed directly.
53. 8051 Microcontroller
8051 Microcontroller
40 pin DIP(Dual Inline Package)
8-bit data bus &16-bit address bus
128byte RAM(on-chip data memory)
4KB ROM(on-chip program memory)
The maximum external data/program memory that
can be interfaced is of 64KB
4 parallel ports of 8-bit
32 input/output bidirectional lines
On-chip oscillator which is having of 12MHz
5volts DC power supply
54. 8051 Microcontroller
8051 Microcontroller
On-chip 2 timers and counters (16bit)
There are 5 interrupts in microcontroller {(2hardware:
IN1&IN2 ) &(3software Interrupts: Timer0, Timer1&
serial port)}
It has an on-chip Programmable power-saving circuit
It uses Harvard 2RISC architecture
On-chip serial port. It is full-duplex type,
asynchronous with Programmable
baudrate{(Universal Asynchronous
Receiver)(Transmitter:
I2C,SPI,USB)&(protocols:set&rules)}
55. AVR Microcontroller
Features Of AVR Microcontroller
32×8 general working function registers.
32k bytes of in-system self-programmable flash program
memory.
2k bytes of internal SRAM.
1024bytes of EEPROM.
Available in 40pin DIP, 44lead QTFP, 44-pad QFN/MLF.
32 programmable I/O lines.
8 channel, 10bit ADC.
Harvard architecture.
UART, I2C, SPI protocol support.
A variety of serial interfaces, including I2C compatible
Two-wire interface synchronous/Asynchronous SPI.
56. MSP Microcontroller
Features Of MSP Microcontroller
Mixed-signal microcontroller family
16bit CPU
Low cost, low power consumption
Ultra low power architecture and flexible clock system
extend battery life
Low operation voltage (from1.8v to 3.6v)
Zero power Brown Out Reset(BOR)
Enhanced libraries to benefit several applications
such as capacitive touch, metering metrology, low
power design, and debugging
Extensive interrupt capability relieves the need for
polling
57. MSP Microcontroller
Features Of MSP Microcontroller
Flexible and powerful processing capabilities
Seven source address modes
Four destination address modes
Only 27 core instructions
Large register file
Efficient table processing
Fast hex to decimal conversion
58. Concept of IP Core
In electronic design, a semiconductor intellectual
property core (SIP core), IP core, or IP block is a
reusable unit of logic, cell, or integrated circuit layout
design that is the intellectual property of one party.
IP cores can be licensed to another party or owned
and used by a single party. The term comes from the
licensing of the patent or source code copyright that
exists in the design.
Designers of application-specific integrated
circuits (ASIC) and systems of field-programmable
gate array (FPGA) logic can use IP cores as building
59. Concept of IP Core
The licensing and use of IP cores in chip design
came into common practice in the 1990s.
There were many licensors and also
many foundries competing on the market.
In 2013, the most widely licensed IP cores are
from Arm Holdings (43.2% market share), Synopsys
Inc. (13.9% market share), Imagination
Technologies (9% market share) and Cadence
Design Systems (5.1% market share).
60. Types of IP cores
The use of an IP core in chip design is comparable to the
use of a library for computer programming or a
discrete integrated circuit component for printed circuit
board design.
Each is a reusable component of design logic with a
defined interface and behavior that has been verified by
its creator and is integrated into a larger design.
Soft cores
IP cores are commonly offered as synthesizable RTL in
a hardware description language such
as Verilog or VHDL.
These are analogous to low-level languages such as C in
the field of computer programming. IP cores delivered
to chip designers as RTL permit chip designers to modify
61. Types of IP cores
IP cores are also sometimes offered as generic gate-
level netlists.
The netlist is a boolean-algebra representation of the
IP's logical function implemented as
generic gates or process-specific standard cells.
An IP core implemented as generic gates can be
compiled for any process technology.
A gate-level netlist is analogous to an assembly
code listing in the field of computer programming.
A netlist gives the IP core vendor reasonable
protection against reverse engineering
Both netlist and synthesizable cores are called soft
cores since both allow a synthesis, placement and
62. Types of IP cores
Hard cores
Hard cores (or hard macros) are analog or digital IP
cores whose function cannot be significantly
modified by chip designers.
These are generally defined as a lower-level
physical description that is specific to a particular
process technology.
Hard cores usually offer better predictability of chip
timing performance and area for their particular
technology.
Analog and mixed-signal logic are generally
distributed as hard cores. Hence, analog IP
(SerDes, PLLs, DAC, ADC, PHYs, etc.) are provided
63. Types of IP cores
Low-level transistor layouts must obey the
target foundry's process design rules.
Therefore, hard cores delivered for one foundry's
process cannot be easily ported to a different
process or foundry.
Merchant foundry operators (such
as IBM, Fujitsu, Samsung, TI, etc.) offer various
hard-macro IP functions built for their own foundry
processes, helping to ensure customer lock-in.