SlideShare a Scribd company logo
1 of 7
Download to read offline
Overview
CRC cards and Elevator Controller
HP Plotter
Bluetooth Baseband Controller

Embedded Systems Case
Studies

Ref: Part of chapter 8 and 9 of Computers as
Components

Siamak Mohammadi
University of Tehran

S. Mohammadi

CRC cards is a well-known method for analyzing a
system and developing an architecture.
CRC

Class

Collaborators

Move up and
down

Car control, car
sensor, car
control sender

Car control

Transmits car
requests

Passenger, floor
control reader

Car state

Elevator Control Classes

Responsibilities

Elevator Car

Classes: logical groupings of data and functionality
Responsibilities: describe what the class do
Collaborators: other classes w/ which a given class works

Reads current
position of car

Scheduler, car
sensor

Elevator car, Passenger, Floor control, Car control, Car
sensors, etc.

Architectural Classes
Car state, Floor control reader, Car control reader, Car
control sender, Scheduler
HW/SW Codesign of Embedded Systems
Tehran University

2

Elevator Responsibilities and Collaborators

Elevator System

S. Mohammadi

HW/SW Codesign of Embedded Systems
Tehran University

3

S. Mohammadi

HW/SW Codesign of Embedded Systems
Tehran University

4
Elevator System

Elevator Operation
Each floor has control panel, display
Each car has control panel:
Controlled by a single controller
Elevator control has up and down

Terminology:
Elevator car
Hoist way
Car control panel
Floor control panel

To stop, disable both

Master controller:
reads elevator positions
reads requests
schedules elevators
controls movement
controls doors
S. Mohammadi

HW/SW Codesign of Embedded Systems
Tehran University

5

Elevator Position Sensing

S. Mohammadi

HW/SW Codesign of Embedded Systems
Tehran University

6

Elevator System Requirements
Name

Elevator system

Inputs

F floor control, N position, N car control, 1 master

Outputs

F displays, N motor controllers

Functions

Responds to requests, operates safely

Performance

Elevator control is time critical

Manufacturing
cost

Electronics is small part of total

Power

Electronics consumes small fraction of total

Physical
size/weight

Cabling is important

Fine

Coarse

S. Mohammadi

HW/SW Codesign of Embedded Systems
Tehran University

7

S. Mohammadi

HW/SW Codesign of Embedded Systems
Tehran University

8
Elevator System Classes

Coarse sensor*

F

Master-Control-Panel*
1
1 Car

Fine sensor* F

1
N
Controller
1

1
F
1

1

1

1

1
Car Control Panel*

Physical Interfaces

Floor

1
N
Motor

Floor Control Panel*

S. Mohammadi

HW/SW Codesign of Embedded Systems
Tehran University

9

Elevator Classes

S. Mohammadi

HW/SW Codesign of Embedded Systems
Tehran University

10

Architecture
Computation and I/O occur at:
Floor control panels/displays
Elevator cars
System controller

Panels Controller
Cab Controller
read buttons and send events to system controller
read sensor inputs and send to system controller

S. Mohammadi

HW/SW Codesign of Embedded Systems
Tehran University

11

S. Mohammadi

HW/SW Codesign of Embedded Systems
Tehran University

12
System Controller

HP Design Drafting Plotter

Must take inputs from many sources:

Plots up to 36 inches wide at 300 DPI
Combines a variety of tasks:

Must control cars to hard real-time deadlines
User interface, scheduling are soft deadlines

Design Considerations
Memory utilization is important
36 inches X large X 300 DPI X n bits/pixel is a
lot of memory
Needs clever algorithms to minimize raster
memory requirements

Testing
Build an elevator simulator using SystemC
and/or FPGA
Simulate multiple elevators
Simulate real-time control demands
S. Mohammadi

HW/SW Codesign of Embedded Systems
Tehran University

Requires real-time control
Requires concurrency
13

HP DesignJet HW Architecture

S. Mohammadi

HW/SW Codesign of Embedded Systems
Tehran University

S. Mohammadi

HW/SW Codesign of Embedded Systems
Tehran University

14

The Plotting Process

15

S. Mohammadi

HW/SW Codesign of Embedded Systems
Tehran University

16
Early Architectural Decision

Data Flow

Chose Intel 80960KA as main processor
Handled parsing, rasterization control, print engine control
Multiplexed bus reduced pin count
Could be upgraded to floating-point if necessary

Used modular I/O to host system
Did not use disk for local storage
System components
2 MB RAM (SIMM sockets for more
Three ASICs:
Servo processing performed by 8052
Microcontroller
S. Mohammadi

HW/SW Codesign of Embedded Systems
Tehran University

17

S. Mohammadi

HW/SW Codesign of Embedded Systems
Tehran University

Rasterization and Operations

Pen Interface and Carriage ASICs

Rasterization

18

Pen Interface ASIC

Plot is generated in swaths
Pixels are generated in row order by main processor
Pixels are fed to pens in column order
Pen interface ASIC transforms row order to column order

Interfaces to i960 bus, swath memory, carriage ASIC
Pen interface reads pixels from swath in predetermined
pattern using pixel address generator
Must support bi-directional printing since head prints both
ways

Operations

Carriage ASIC

Servo processor controls stepper motor
Carriage processor must write, read pen alignment marks
Processor support ASIC provides multiple functions
Motion controller decodes position of print carriage and
paper

S. Mohammadi

HW/SW Codesign of Embedded Systems
Tehran University

Interfaces to processor bus, pen interface ASIC, servo
controller
Reads timing control registers using the CPU bus
Delay registers add correction for pen alignment

19

S. Mohammadi

HW/SW Codesign of Embedded Systems
Tehran University

20
Development Process

Bluetooth Baseband Controller

Pixel shuffling algorithm for pen interface/carriage
ASICs was prototyped in C
Software Development Environment

Bluetooth is a de-facto standard for wireless data
communication for 2.4GHz band. It is developed
by a consortium including, Ericsson, Intel, Nokia
and Toshiba
Bluetooth Support

Plotter software could be run on Unix workstation or target
platform
Used in-house RTOS, HP-GL/2 parser was legacy code
Rewrote vector/raster converter from assembly language to
C to port to i960
Front panel developed on PC, tested by user i/f
designers/marketing
Paper loading designed by mechanical engineers

S. Mohammadi

HW/SW Codesign of Embedded Systems
Tehran University

21

VLSI Bluetooth Baseband Controller Organization

Short-range communication (10cm to 10m)
Intends to support laptop to cell phone, printer, fax
machines, keyboards, etc.
Provide a bridge to existing data networks.
A gross data rate of 1Mbit/s
Uses frequency hopping scheme and forward error
correction
Robust communication in a noisy and uncoordinated
environment
S. Mohammadi

HW/SW Codesign of Embedded Systems
Tehran University

22

Bluetooth Baseband Controller
Uses an ARM7TDMI core with
64Kbytes of fast RAM
4Kbyte of instruction cache
Sharing pin peripheral modules of 3 UARTS & a USB
interface
Bluetooth Baseband Controller includes a power optimized
hardware block, the Ericsson Bluetooth Core (EBC) that
handles all the Link Controller functionality
EBC performs all the packet handling functions for point-to-point,
multi-slot and point-to-multipoint communications
The protocol uses a combination of circuit and packet switching
Slots that can be reserved for synch channels (e.g. to support
voice transmission)

S. Mohammadi

HW/SW Codesign of Embedded Systems
Tehran University

23

S. Mohammadi

HW/SW Codesign of Embedded Systems
Tehran University

24
A Typical Bluetooth Application
Baseband controller needs a radio module and
a ROM

S. Mohammadi

HW/SW Codesign of Embedded Systems
Tehran University

25

More Related Content

What's hot

Schematic and PCB Design Using Eagle
Schematic and PCB Design Using EagleSchematic and PCB Design Using Eagle
Schematic and PCB Design Using EagleMoe Moe Myint
 
Computer architecture input output organization
Computer architecture input output organizationComputer architecture input output organization
Computer architecture input output organizationMazin Alwaaly
 
IO Techniques in Computer Organization
IO Techniques in Computer OrganizationIO Techniques in Computer Organization
IO Techniques in Computer OrganizationOm Prakash
 
Input output in computer Orgranization and architecture
Input output in computer Orgranization and architectureInput output in computer Orgranization and architecture
Input output in computer Orgranization and architecturevikram patel
 
L4 speeding-up-execution
L4 speeding-up-executionL4 speeding-up-execution
L4 speeding-up-executionrsamurti
 
Basic computer organization
Basic computer organizationBasic computer organization
Basic computer organizationNitesh Singh
 
Transfer Modes | Computer Science
Transfer Modes | Computer ScienceTransfer Modes | Computer Science
Transfer Modes | Computer ScienceTransweb Global Inc
 
Design an I/O system
Design an I/O systemDesign an I/O system
Design an I/O systemAARTHI SEETHA
 
Computer oganization input-output
Computer oganization input-outputComputer oganization input-output
Computer oganization input-outputDeepak John
 
Hardware I/O organization
Hardware  I/O organization Hardware  I/O organization
Hardware I/O organization faria_khan
 
Input output accessing
Input output accessingInput output accessing
Input output accessingankitraosingh
 

What's hot (20)

Unit3 input
Unit3 inputUnit3 input
Unit3 input
 
Lecture 11
Lecture 11Lecture 11
Lecture 11
 
Schematic and PCB Design Using Eagle
Schematic and PCB Design Using EagleSchematic and PCB Design Using Eagle
Schematic and PCB Design Using Eagle
 
Input & Output
Input & OutputInput & Output
Input & Output
 
Computer architecture input output organization
Computer architecture input output organizationComputer architecture input output organization
Computer architecture input output organization
 
IO Techniques in Computer Organization
IO Techniques in Computer OrganizationIO Techniques in Computer Organization
IO Techniques in Computer Organization
 
Lecture 14
Lecture 14Lecture 14
Lecture 14
 
Computer architecture
Computer architectureComputer architecture
Computer architecture
 
Input output in computer Orgranization and architecture
Input output in computer Orgranization and architectureInput output in computer Orgranization and architecture
Input output in computer Orgranization and architecture
 
Chapter 2
Chapter 2Chapter 2
Chapter 2
 
Lecture 34
Lecture 34Lecture 34
Lecture 34
 
I/O Organization
I/O OrganizationI/O Organization
I/O Organization
 
L4 speeding-up-execution
L4 speeding-up-executionL4 speeding-up-execution
L4 speeding-up-execution
 
Basic computer organization
Basic computer organizationBasic computer organization
Basic computer organization
 
Counit2 2
Counit2 2Counit2 2
Counit2 2
 
Transfer Modes | Computer Science
Transfer Modes | Computer ScienceTransfer Modes | Computer Science
Transfer Modes | Computer Science
 
Design an I/O system
Design an I/O systemDesign an I/O system
Design an I/O system
 
Computer oganization input-output
Computer oganization input-outputComputer oganization input-output
Computer oganization input-output
 
Hardware I/O organization
Hardware  I/O organization Hardware  I/O organization
Hardware I/O organization
 
Input output accessing
Input output accessingInput output accessing
Input output accessing
 

Viewers also liked (18)

Simple ado program by visual studio
Simple ado program by visual studioSimple ado program by visual studio
Simple ado program by visual studio
 
Filtering content bbased crs
Filtering content bbased crsFiltering content bbased crs
Filtering content bbased crs
 
Knightstour
KnightstourKnightstour
Knightstour
 
Running your database in the cloud presentation
Running your database in the cloud presentationRunning your database in the cloud presentation
Running your database in the cloud presentation
 
Unit ii-ppt
Unit ii-pptUnit ii-ppt
Unit ii-ppt
 
Programming
ProgrammingProgramming
Programming
 
Android wear notes
Android wear notesAndroid wear notes
Android wear notes
 
Mobile development xamarain
Mobile development xamarainMobile development xamarain
Mobile development xamarain
 
(148065320) dijistra algo
(148065320) dijistra algo(148065320) dijistra algo
(148065320) dijistra algo
 
Running your database in the cloud presentation
Running your database in the cloud presentationRunning your database in the cloud presentation
Running your database in the cloud presentation
 
Big data-and-the-web
Big data-and-the-webBig data-and-the-web
Big data-and-the-web
 
Cloudcomputing basics
Cloudcomputing basicsCloudcomputing basics
Cloudcomputing basics
 
How to use sq lite with java using net beans
How to use sq lite with java using net beansHow to use sq lite with java using net beans
How to use sq lite with java using net beans
 
Javanotes5 linked
Javanotes5 linkedJavanotes5 linked
Javanotes5 linked
 
Intelli j idea-report
Intelli j idea-reportIntelli j idea-report
Intelli j idea-report
 
Chapter 02 collaborative recommendation
Chapter 02   collaborative recommendationChapter 02   collaborative recommendation
Chapter 02 collaborative recommendation
 
Rational rose tutorial
Rational rose tutorialRational rose tutorial
Rational rose tutorial
 
Apidays efficient-131204080056-phpapp02
Apidays efficient-131204080056-phpapp02Apidays efficient-131204080056-phpapp02
Apidays efficient-131204080056-phpapp02
 

Similar to 7 embed systcasestudy

Portfolio of Projects
Portfolio of ProjectsPortfolio of Projects
Portfolio of ProjectsDaniele Pinto
 
Qiang Yu CV
Qiang Yu CVQiang Yu CV
Qiang Yu CVQiang Yu
 
Communication Based Projects Ideas for Engineering Students
Communication Based Projects Ideas for Engineering StudentsCommunication Based Projects Ideas for Engineering Students
Communication Based Projects Ideas for Engineering Studentselprocus
 
1. Programming in C - Introduction.pdf
1. Programming in C - Introduction.pdf1. Programming in C - Introduction.pdf
1. Programming in C - Introduction.pdfhydyc
 
Automatic generation of hardware memory architectures for HPC
Automatic generation of hardware memory architectures for HPCAutomatic generation of hardware memory architectures for HPC
Automatic generation of hardware memory architectures for HPCFacultad de Informática UCM
 
How to Select Hardware for Internet of Things Systems?
How to Select Hardware for Internet of Things Systems?How to Select Hardware for Internet of Things Systems?
How to Select Hardware for Internet of Things Systems?Hannes Tschofenig
 
MATLAB and Simulink for Communications System Design (Design Conference 2013)
MATLAB and Simulink for Communications System Design (Design Conference 2013)MATLAB and Simulink for Communications System Design (Design Conference 2013)
MATLAB and Simulink for Communications System Design (Design Conference 2013)Analog Devices, Inc.
 
Linux-Based Data Acquisition and Processing On Palmtop Computer
Linux-Based Data Acquisition and Processing On Palmtop ComputerLinux-Based Data Acquisition and Processing On Palmtop Computer
Linux-Based Data Acquisition and Processing On Palmtop ComputerIOSR Journals
 
Linux-Based Data Acquisition and Processing On Palmtop Computer
Linux-Based Data Acquisition and Processing On Palmtop ComputerLinux-Based Data Acquisition and Processing On Palmtop Computer
Linux-Based Data Acquisition and Processing On Palmtop ComputerIOSR Journals
 
Practical Distributed Control Systems (DCS) for Engineers and Technicians
Practical Distributed Control Systems (DCS) for Engineers and TechniciansPractical Distributed Control Systems (DCS) for Engineers and Technicians
Practical Distributed Control Systems (DCS) for Engineers and TechniciansLiving Online
 
computer-systems-design-and-architecture.ppt
computer-systems-design-and-architecture.pptcomputer-systems-design-and-architecture.ppt
computer-systems-design-and-architecture.pptssuserbd8d68
 

Similar to 7 embed systcasestudy (20)

resum_g
resum_gresum_g
resum_g
 
Defense
DefenseDefense
Defense
 
Defense
DefenseDefense
Defense
 
Resume
ResumeResume
Resume
 
Sivanantham resume
Sivanantham resumeSivanantham resume
Sivanantham resume
 
Portfolio of Projects
Portfolio of ProjectsPortfolio of Projects
Portfolio of Projects
 
Qiang Yu CV
Qiang Yu CVQiang Yu CV
Qiang Yu CV
 
Communication Based Projects Ideas for Engineering Students
Communication Based Projects Ideas for Engineering StudentsCommunication Based Projects Ideas for Engineering Students
Communication Based Projects Ideas for Engineering Students
 
1. Programming in C - Introduction.pdf
1. Programming in C - Introduction.pdf1. Programming in C - Introduction.pdf
1. Programming in C - Introduction.pdf
 
Computer Programming_Unit 1
Computer Programming_Unit 1Computer Programming_Unit 1
Computer Programming_Unit 1
 
Automatic generation of hardware memory architectures for HPC
Automatic generation of hardware memory architectures for HPCAutomatic generation of hardware memory architectures for HPC
Automatic generation of hardware memory architectures for HPC
 
How to Select Hardware for Internet of Things Systems?
How to Select Hardware for Internet of Things Systems?How to Select Hardware for Internet of Things Systems?
How to Select Hardware for Internet of Things Systems?
 
Resume
ResumeResume
Resume
 
A STUDY OF AN ENTRENCHED SYSTEM USING INTERNET OF THINGS
A STUDY OF AN ENTRENCHED SYSTEM USING INTERNET OF THINGSA STUDY OF AN ENTRENCHED SYSTEM USING INTERNET OF THINGS
A STUDY OF AN ENTRENCHED SYSTEM USING INTERNET OF THINGS
 
MATLAB and Simulink for Communications System Design (Design Conference 2013)
MATLAB and Simulink for Communications System Design (Design Conference 2013)MATLAB and Simulink for Communications System Design (Design Conference 2013)
MATLAB and Simulink for Communications System Design (Design Conference 2013)
 
Linux-Based Data Acquisition and Processing On Palmtop Computer
Linux-Based Data Acquisition and Processing On Palmtop ComputerLinux-Based Data Acquisition and Processing On Palmtop Computer
Linux-Based Data Acquisition and Processing On Palmtop Computer
 
Linux-Based Data Acquisition and Processing On Palmtop Computer
Linux-Based Data Acquisition and Processing On Palmtop ComputerLinux-Based Data Acquisition and Processing On Palmtop Computer
Linux-Based Data Acquisition and Processing On Palmtop Computer
 
Practical Distributed Control Systems (DCS) for Engineers and Technicians
Practical Distributed Control Systems (DCS) for Engineers and TechniciansPractical Distributed Control Systems (DCS) for Engineers and Technicians
Practical Distributed Control Systems (DCS) for Engineers and Technicians
 
computer-systems-design-and-architecture.ppt
computer-systems-design-and-architecture.pptcomputer-systems-design-and-architecture.ppt
computer-systems-design-and-architecture.ppt
 
Kairos aarohan
Kairos  aarohanKairos  aarohan
Kairos aarohan
 

Recently uploaded

The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 

Recently uploaded (20)

The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 

7 embed systcasestudy

  • 1. Overview CRC cards and Elevator Controller HP Plotter Bluetooth Baseband Controller Embedded Systems Case Studies Ref: Part of chapter 8 and 9 of Computers as Components Siamak Mohammadi University of Tehran S. Mohammadi CRC cards is a well-known method for analyzing a system and developing an architecture. CRC Class Collaborators Move up and down Car control, car sensor, car control sender Car control Transmits car requests Passenger, floor control reader Car state Elevator Control Classes Responsibilities Elevator Car Classes: logical groupings of data and functionality Responsibilities: describe what the class do Collaborators: other classes w/ which a given class works Reads current position of car Scheduler, car sensor Elevator car, Passenger, Floor control, Car control, Car sensors, etc. Architectural Classes Car state, Floor control reader, Car control reader, Car control sender, Scheduler HW/SW Codesign of Embedded Systems Tehran University 2 Elevator Responsibilities and Collaborators Elevator System S. Mohammadi HW/SW Codesign of Embedded Systems Tehran University 3 S. Mohammadi HW/SW Codesign of Embedded Systems Tehran University 4
  • 2. Elevator System Elevator Operation Each floor has control panel, display Each car has control panel: Controlled by a single controller Elevator control has up and down Terminology: Elevator car Hoist way Car control panel Floor control panel To stop, disable both Master controller: reads elevator positions reads requests schedules elevators controls movement controls doors S. Mohammadi HW/SW Codesign of Embedded Systems Tehran University 5 Elevator Position Sensing S. Mohammadi HW/SW Codesign of Embedded Systems Tehran University 6 Elevator System Requirements Name Elevator system Inputs F floor control, N position, N car control, 1 master Outputs F displays, N motor controllers Functions Responds to requests, operates safely Performance Elevator control is time critical Manufacturing cost Electronics is small part of total Power Electronics consumes small fraction of total Physical size/weight Cabling is important Fine Coarse S. Mohammadi HW/SW Codesign of Embedded Systems Tehran University 7 S. Mohammadi HW/SW Codesign of Embedded Systems Tehran University 8
  • 3. Elevator System Classes Coarse sensor* F Master-Control-Panel* 1 1 Car Fine sensor* F 1 N Controller 1 1 F 1 1 1 1 1 Car Control Panel* Physical Interfaces Floor 1 N Motor Floor Control Panel* S. Mohammadi HW/SW Codesign of Embedded Systems Tehran University 9 Elevator Classes S. Mohammadi HW/SW Codesign of Embedded Systems Tehran University 10 Architecture Computation and I/O occur at: Floor control panels/displays Elevator cars System controller Panels Controller Cab Controller read buttons and send events to system controller read sensor inputs and send to system controller S. Mohammadi HW/SW Codesign of Embedded Systems Tehran University 11 S. Mohammadi HW/SW Codesign of Embedded Systems Tehran University 12
  • 4. System Controller HP Design Drafting Plotter Must take inputs from many sources: Plots up to 36 inches wide at 300 DPI Combines a variety of tasks: Must control cars to hard real-time deadlines User interface, scheduling are soft deadlines Design Considerations Memory utilization is important 36 inches X large X 300 DPI X n bits/pixel is a lot of memory Needs clever algorithms to minimize raster memory requirements Testing Build an elevator simulator using SystemC and/or FPGA Simulate multiple elevators Simulate real-time control demands S. Mohammadi HW/SW Codesign of Embedded Systems Tehran University Requires real-time control Requires concurrency 13 HP DesignJet HW Architecture S. Mohammadi HW/SW Codesign of Embedded Systems Tehran University S. Mohammadi HW/SW Codesign of Embedded Systems Tehran University 14 The Plotting Process 15 S. Mohammadi HW/SW Codesign of Embedded Systems Tehran University 16
  • 5. Early Architectural Decision Data Flow Chose Intel 80960KA as main processor Handled parsing, rasterization control, print engine control Multiplexed bus reduced pin count Could be upgraded to floating-point if necessary Used modular I/O to host system Did not use disk for local storage System components 2 MB RAM (SIMM sockets for more Three ASICs: Servo processing performed by 8052 Microcontroller S. Mohammadi HW/SW Codesign of Embedded Systems Tehran University 17 S. Mohammadi HW/SW Codesign of Embedded Systems Tehran University Rasterization and Operations Pen Interface and Carriage ASICs Rasterization 18 Pen Interface ASIC Plot is generated in swaths Pixels are generated in row order by main processor Pixels are fed to pens in column order Pen interface ASIC transforms row order to column order Interfaces to i960 bus, swath memory, carriage ASIC Pen interface reads pixels from swath in predetermined pattern using pixel address generator Must support bi-directional printing since head prints both ways Operations Carriage ASIC Servo processor controls stepper motor Carriage processor must write, read pen alignment marks Processor support ASIC provides multiple functions Motion controller decodes position of print carriage and paper S. Mohammadi HW/SW Codesign of Embedded Systems Tehran University Interfaces to processor bus, pen interface ASIC, servo controller Reads timing control registers using the CPU bus Delay registers add correction for pen alignment 19 S. Mohammadi HW/SW Codesign of Embedded Systems Tehran University 20
  • 6. Development Process Bluetooth Baseband Controller Pixel shuffling algorithm for pen interface/carriage ASICs was prototyped in C Software Development Environment Bluetooth is a de-facto standard for wireless data communication for 2.4GHz band. It is developed by a consortium including, Ericsson, Intel, Nokia and Toshiba Bluetooth Support Plotter software could be run on Unix workstation or target platform Used in-house RTOS, HP-GL/2 parser was legacy code Rewrote vector/raster converter from assembly language to C to port to i960 Front panel developed on PC, tested by user i/f designers/marketing Paper loading designed by mechanical engineers S. Mohammadi HW/SW Codesign of Embedded Systems Tehran University 21 VLSI Bluetooth Baseband Controller Organization Short-range communication (10cm to 10m) Intends to support laptop to cell phone, printer, fax machines, keyboards, etc. Provide a bridge to existing data networks. A gross data rate of 1Mbit/s Uses frequency hopping scheme and forward error correction Robust communication in a noisy and uncoordinated environment S. Mohammadi HW/SW Codesign of Embedded Systems Tehran University 22 Bluetooth Baseband Controller Uses an ARM7TDMI core with 64Kbytes of fast RAM 4Kbyte of instruction cache Sharing pin peripheral modules of 3 UARTS & a USB interface Bluetooth Baseband Controller includes a power optimized hardware block, the Ericsson Bluetooth Core (EBC) that handles all the Link Controller functionality EBC performs all the packet handling functions for point-to-point, multi-slot and point-to-multipoint communications The protocol uses a combination of circuit and packet switching Slots that can be reserved for synch channels (e.g. to support voice transmission) S. Mohammadi HW/SW Codesign of Embedded Systems Tehran University 23 S. Mohammadi HW/SW Codesign of Embedded Systems Tehran University 24
  • 7. A Typical Bluetooth Application Baseband controller needs a radio module and a ROM S. Mohammadi HW/SW Codesign of Embedded Systems Tehran University 25