SlideShare a Scribd company logo
1 of 5
What will next generation embedded design look like?
By Ata Khan, vice president of technical staff, Cypress Semiconductor Corp.



Embedded processors are everywhere. Almost everything powered by electricity has an embedded processor for performing
the control and/or processing functions required by the application. The proliferation and the ever-increasing sophistication of
these processors over more than three decades has been driven by decreasing costs and increasing processing and
controlling power. Moore’s law, competitive pressure, and rapid innovation in consumer devices have led to everyday devices
incorporating machines that have the same processing power that mainframe enterprise computers delivered not so long ago.

Much of this innovation has been driven by human consumer behavior that, after a while, tends to ignore linear improvements
but responds strongly to exponential advances, thus driving the push to more powerful systems with more features and more
complexity. As a consequence, it is now common for consumer devices to incorporate embedded processors with processing
power in triple-digit MIPS, Gigabytes of storage, and access to all kinds of commonly used communication protocols. This is
not a problem with respect to the hardware available (i.e., the processors themselves) nor to the software development tools,
operating systems, and compilers. In addition, the people themselves doing the embedded design have the capacity to
understand the evolving hardware and software and design with it to build marketable applications.

Rather, the problems that complexity brings are related to the fact that human design bandwidth has not grown at the same
rate as processing power. As a result, ever-increasing complexity brings inevitable delays and simply adding people is not the
answer as many well-known books on productivity (The Mythical Man-Month is perhaps the best known) can vouch for.

The Current Situation
Designing a modern embedded system is a complex multi-tiered activity. Defining the behavior required of the system by its
potential customers, understanding the competitive landscape and how to leverage it, determining if the needed competence
exists in the organization, and reducing/relating the system specifications to the software, tools, processors, and other
components required are all major tasks that need to be completed before the actual task of designing hardware and writing
code can begin.

Once all the background work to get a design underway is done, the hard, repetitive work of hardware and software design
begins. Typically, embedded designs consist of selections from 3 major categories of blocks: Processing, digital (peripherals
and logic), and analog (the physical interface for sensing and controlling). A system is generally assembled of various
components from the 3 major categories based on the hardware interfaces required by the system, and the software must be
built to make the system perform the processing and control functions required. Once a particular design is “set” in software
and hardware, it is difficult, costly, and time-consuming to change because of interactions between software and hardware
partitions and within the classes of blocks.

Embedded designers need to get to market ahead of their competitors. To have an early market advantage and re-use their
investments in knowledge and tools as much as possible, their selected architectures and design platforms have to be flexible
and adaptable. These tools and components must enable to support significant last minute changes (indeed, continuous
changes), as well as be able to utilize industry standard eco-systems to take advantage of a large developer community and
standard tools. Compounding these challenges is the fact that the longer design cycle, the higher the probability of the market
changing and having different requirements which, of course, makes the design cycle even longer, and so on. Rapid product
development therefore not provides only a financial advantage but reduces uncertainty while offering the possibility of earlier
customer feedback and market leadership.

A New Way of Designing
Given that a typical embedded system is a combination of processing, digital, and analog blocks, and that the embedded
system consists of the whole of the combination of these blocks with the appropriate software, developers need to ask the
following key questions:

1. How do we make sure we are speeding up the total design process?

    Amdahl’s law, paraphrased, states that it is the sequential portion of the total processes that determine the overall
    potential improvement. As applied here, some basic processes must change.

What will next generation embedded design look like?                                                                 Page 1 of 5

Published in Embedded.com (http://www.embedded.com)                                                                October 2008



                                                                                                                                   [+] Feedback
2. How do we accelerate the learning phases in order to converge more quickly on the marketable design?

    Experience teaches us that it is far better to go through a process of step-wise refinement and convergence than to push
    system testing out to the end. A corollary of this is that the earlier bugs are found, the cheaper they are to address.

3. How do we reduce overall design effort?

    Put another way, developers need to determine which parts of the system can be provided for in terms of reusability or
    generated intelligently to save the time and effort otherwise needed to create them.

4. How do we allow for rapid change in all phases of the design process?

    Design changes made earlier in the design process are easy to implement. Because of interdependencies across a
    design, it is not at all easy to make rapid changes once a design has firmed up.

5. How do we allow for updating both hardware and software in the field?

    It is relatively easy, given that some means of communications exist, to update embedded software. Additionally software
    updates have become quite common and are accepted by many consumers as part of owning certain electronic devices.
    The difficulty is in updating hardware functionality as well. For example, what if the behavior of a certain state machine
    needs to be changed or if the machine has to perform different tasks at different times beyond its current processing
    capabilities?

6. How do we allow for standard tools to be used?

    As compilers and Debuggers evolve over time, there is much learning and improvement (and at many users’ expense)
    embodied in standard tools. New embedded design techniques must support the use of industry standard tools to
    maximize improvement gains while minimizing designer learning investment.

7. Are we providing a Platform?

    It is essential that a scalable platform in terms of well-defined hardware and software architectural features be provided so
    that designs may be scaled, depending upon the application, and previous efforts reused (whether hardware or software)

The ideal embedded architecture would therefore have a basic functional structure that is highly flexible and dynamically
modifiable. It would also automate all steps of the development cycle other than creating the code the embedded designer
develops for the particular application. The architecture would be highly scalable to support re-usability of knowledge and tools
and be based on the use of standard development tools supported by a large ecosystem. In addition, it would incorporate
system-level integration and low power and size by being incorporated in silicon built using advanced processes so as to
optimize value to the customer and reduce overall power consumption.

A new Design Flow
Such an architecture calls for a vastly different approach compared to building an embedded design using microcontrollers
with fixed functionality and external components and developing software/firmware manually. This design approach would be
based on an integrated embedded solution with a well-defined hardware partition and software partition.

The hardware partition would consist of a scalable silicon platform consisting of a processing sub-system (including memory);
an analog sub-system consisting of various functional blocks and commonly used fixed-function peripherals; and
programmable digital blocks, all connectable via a true switched fabric.

The software partition consists of a development environment which, starting with a blank canvas, allows the user to construct
a complete system consisting of:

•   Commonly used peripherals
•   Serial Communication Blocks
•   Standard Analog blocks
•   Boolean primitives
•   Hierarchically created components (i.e., created by the user)


What will next generation embedded design look like?                                                                  Page 2 of 5

Published in Embedded.com (http://www.embedded.com)                                                                 October 2008



                                                                                                                                    [+] Feedback
•   User-created RTL
•   The software tool would embody several complex functions:
•   A blank canvas for the user to place and connect components from the list above
•   A comprehensive list of common pre-built configurable components for users to select from and place on the canvas
•   The ability to place Boolean primitives, create Components embodying other functions, and specify the behavior of
    components via RTL
•   Pick fixed-function and/or programmable resources as required, synthesize user RTL and placed components in the
    design and map functionality to programmable digital logic
•   Place and route components on the silicon platform using a switched fabric including connections to the user’s choice of
    I/O pins
•   Generate APIs (including APIs for user-defined components) and device drivers for pre-built components. APIs created
    for the user-defined components would allow passing of parameters to constituent blocks
•   Allow the functionality of blocks to be dynamically reconfigured based on software commands, if so required.
•   Generate datasheets for component blocks and the chip-level entity.


Once all the above is completed, the user can then add application code working with the compilers and debuggers of his
choice to the now-optimized architecture. This process may be, simplistically, represented in a flow-chart as follows:



                                                                     Start with Blank Canvas



                                                           Pick and place Pre-built Blocks from menus



                                                         Construct custom components with Blocks and/or RTL



                                                                 Connect components to each other




                                                           Connect components to Clocking system, DMA,
                                                           Interrupt, and Pins



                                                           Build: Synthesize, Place, and Route to create User
                                                           Programmable Chip


                                                            Create Application Program, Run, and Debug using
                                                            standard tools
          Change/Add/Adapt functionality as needed



                                                 No
                                                                          Functionality &
                                                                          Features OK ?




                                                                                       Yes




What will next generation embedded design look like?                                                             Page 3 of 5

Published in Embedded.com (http://www.embedded.com)                                                             October 2008



                                                                                                                               [+] Feedback
Some examples of configuring various sub-systems are shown below.



Clocking: The user is given the following menu to select clock sources from. Selection of a clock source is as easy as selecting
and clicking; all connections on-chip, control register set-up, and initial clock configuration is done automatically.




Interrupts: An ISR (Interrupt Service Routine) editor allows any digital signal to be connected to an interrupt input. Such tools
would allow assigning a particular Interrupt priority and vector number to a signal.

DMA: DMA is another example of a global resource (like clocking and interrupts) that many blocks may choose to use (i.e., it is
up the user). The DMA editor would show all peripherals connected to the DMA request inputs and will allow priority settings
so as to guarantee optimum throughput for all its clients.

What does it take to do this?
In its current PSoC families, Cypress has implemented a precursor of this new design flow. Experience gathered over several
years of implementing and refining that flow with the help of thousands of customers has provide invaluable insight in the new
directions the design flow can take. A new embedded design flow such as this cannot be defined in one area. It must
encompass:

a. A Silicon platform that can be scalable and reusable in terms of both hardware and software.

b. A Software development environment that automates component selection and generation as much as possible with the
  goal of creating software interfaces (APIs) for all customer-specified blocks so that designers can focus on developing their
  value-added application code.

c. The use of standard tools and debuggers. In this way, designers can leverage reusability and take advantage of the learning
   curve that standard tools exploit, as well as tap into the large ecosystems that grow around industry standard tools.

What will next generation embedded design look like?                                                                  Page 4 of 5

Published in Embedded.com (http://www.embedded.com)                                                                 October 2008



                                                                                                                                    [+] Feedback
Cypress Semiconductor
                                                                                                                                                           198 Champion Court
                                                                                                                                                      San Jose, CA 95134-1709
                                                                                                                                                          Phone: 408-943-2600
                                                                                                                                                              Fax: 408-943-4730
                                                                                                                                                        http://www.cypress.com

© Cypress Semiconductor Corporation, 2007. The information contained herein is subject to change without notice. Cypress Semiconductor Corporation assumes no responsibility for the
use of any circuitry other than circuitry embodied in a Cypress product. Nor does it convey or imply any license under patent or other rights. Cypress products are not warranted nor intended
to be used for medical, life support, life saving, critical control or safety applications, unless pursuant to an express written agreement with Cypress. Furthermore, Cypress does not authorize
its products for use as critical components in life-support systems where a malfunction or failure may reasonably be expected to result in significant injury to the user. The inclusion of
Cypress products in life-support systems application implies that the manufacturer assumes all risk of such use and in doing so indemnifies Cypress against all charges.

PSoC Designer™, Programmable System-on-Chip™, and PSoC Express™ are trademarks and PSoC® is a registered trademark of Cypress Semiconductor Corp. All other trademarks or
registered trademarks referenced herein are property of the respective corporations.

This Source Code (software and/or firmware) is owned by Cypress Semiconductor Corporation (Cypress) and is protected by and subject to worldwide patent protection (United States and
foreign), United States copyright laws and international treaty provisions. Cypress hereby grants to licensee a personal, non-exclusive, non-transferable license to copy, use, modify, create
derivative works of, and compile the Cypress Source Code and derivative works for the sole purpose of creating custom software and or firmware in support of licensee product to be used
only in conjunction with a Cypress integrated circuit as specified in the applicable agreement. Any reproduction, modification, translation, compilation, or representation of this Source Code
except as specified above is prohibited without the express written permission of Cypress.

Disclaimer: CYPRESS MAKES NO WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, WITH REGARD TO THIS MATERIAL, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. Cypress reserves the right to make changes without further notice to the materials described
herein. Cypress does not assume any liability arising out of the application or use of any product or circuit described herein. Cypress does not authorize its products for use as critical
components in life-support systems where a malfunction or failure may reasonably be expected to result in significant injury to the user. The inclusion of Cypress’ product in a life-support
systems application implies that the manufacturer assumes all risk of such use and in doing so indemnifies Cypress against all charges.

Use may be limited by and subject to the applicable Cypress software license agreement.




What will next generation embedded design look like?                                                                                                                             Page 5 of 5

Published in Embedded.com (http://www.embedded.com)                                                                                                                           October 2008



                                                                                                                                                                                                    [+] Feedback

More Related Content

Recently uploaded

How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
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
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
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
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
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
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditSkynet Technologies
 
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
 

Recently uploaded (20)

How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
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
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 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
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
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
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Manual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance AuditManual 508 Accessibility Compliance Audit
Manual 508 Accessibility Compliance Audit
 
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
 

Featured

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

Featured (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

What will next generation embedded design look like?

  • 1. What will next generation embedded design look like? By Ata Khan, vice president of technical staff, Cypress Semiconductor Corp. Embedded processors are everywhere. Almost everything powered by electricity has an embedded processor for performing the control and/or processing functions required by the application. The proliferation and the ever-increasing sophistication of these processors over more than three decades has been driven by decreasing costs and increasing processing and controlling power. Moore’s law, competitive pressure, and rapid innovation in consumer devices have led to everyday devices incorporating machines that have the same processing power that mainframe enterprise computers delivered not so long ago. Much of this innovation has been driven by human consumer behavior that, after a while, tends to ignore linear improvements but responds strongly to exponential advances, thus driving the push to more powerful systems with more features and more complexity. As a consequence, it is now common for consumer devices to incorporate embedded processors with processing power in triple-digit MIPS, Gigabytes of storage, and access to all kinds of commonly used communication protocols. This is not a problem with respect to the hardware available (i.e., the processors themselves) nor to the software development tools, operating systems, and compilers. In addition, the people themselves doing the embedded design have the capacity to understand the evolving hardware and software and design with it to build marketable applications. Rather, the problems that complexity brings are related to the fact that human design bandwidth has not grown at the same rate as processing power. As a result, ever-increasing complexity brings inevitable delays and simply adding people is not the answer as many well-known books on productivity (The Mythical Man-Month is perhaps the best known) can vouch for. The Current Situation Designing a modern embedded system is a complex multi-tiered activity. Defining the behavior required of the system by its potential customers, understanding the competitive landscape and how to leverage it, determining if the needed competence exists in the organization, and reducing/relating the system specifications to the software, tools, processors, and other components required are all major tasks that need to be completed before the actual task of designing hardware and writing code can begin. Once all the background work to get a design underway is done, the hard, repetitive work of hardware and software design begins. Typically, embedded designs consist of selections from 3 major categories of blocks: Processing, digital (peripherals and logic), and analog (the physical interface for sensing and controlling). A system is generally assembled of various components from the 3 major categories based on the hardware interfaces required by the system, and the software must be built to make the system perform the processing and control functions required. Once a particular design is “set” in software and hardware, it is difficult, costly, and time-consuming to change because of interactions between software and hardware partitions and within the classes of blocks. Embedded designers need to get to market ahead of their competitors. To have an early market advantage and re-use their investments in knowledge and tools as much as possible, their selected architectures and design platforms have to be flexible and adaptable. These tools and components must enable to support significant last minute changes (indeed, continuous changes), as well as be able to utilize industry standard eco-systems to take advantage of a large developer community and standard tools. Compounding these challenges is the fact that the longer design cycle, the higher the probability of the market changing and having different requirements which, of course, makes the design cycle even longer, and so on. Rapid product development therefore not provides only a financial advantage but reduces uncertainty while offering the possibility of earlier customer feedback and market leadership. A New Way of Designing Given that a typical embedded system is a combination of processing, digital, and analog blocks, and that the embedded system consists of the whole of the combination of these blocks with the appropriate software, developers need to ask the following key questions: 1. How do we make sure we are speeding up the total design process? Amdahl’s law, paraphrased, states that it is the sequential portion of the total processes that determine the overall potential improvement. As applied here, some basic processes must change. What will next generation embedded design look like? Page 1 of 5 Published in Embedded.com (http://www.embedded.com) October 2008 [+] Feedback
  • 2. 2. How do we accelerate the learning phases in order to converge more quickly on the marketable design? Experience teaches us that it is far better to go through a process of step-wise refinement and convergence than to push system testing out to the end. A corollary of this is that the earlier bugs are found, the cheaper they are to address. 3. How do we reduce overall design effort? Put another way, developers need to determine which parts of the system can be provided for in terms of reusability or generated intelligently to save the time and effort otherwise needed to create them. 4. How do we allow for rapid change in all phases of the design process? Design changes made earlier in the design process are easy to implement. Because of interdependencies across a design, it is not at all easy to make rapid changes once a design has firmed up. 5. How do we allow for updating both hardware and software in the field? It is relatively easy, given that some means of communications exist, to update embedded software. Additionally software updates have become quite common and are accepted by many consumers as part of owning certain electronic devices. The difficulty is in updating hardware functionality as well. For example, what if the behavior of a certain state machine needs to be changed or if the machine has to perform different tasks at different times beyond its current processing capabilities? 6. How do we allow for standard tools to be used? As compilers and Debuggers evolve over time, there is much learning and improvement (and at many users’ expense) embodied in standard tools. New embedded design techniques must support the use of industry standard tools to maximize improvement gains while minimizing designer learning investment. 7. Are we providing a Platform? It is essential that a scalable platform in terms of well-defined hardware and software architectural features be provided so that designs may be scaled, depending upon the application, and previous efforts reused (whether hardware or software) The ideal embedded architecture would therefore have a basic functional structure that is highly flexible and dynamically modifiable. It would also automate all steps of the development cycle other than creating the code the embedded designer develops for the particular application. The architecture would be highly scalable to support re-usability of knowledge and tools and be based on the use of standard development tools supported by a large ecosystem. In addition, it would incorporate system-level integration and low power and size by being incorporated in silicon built using advanced processes so as to optimize value to the customer and reduce overall power consumption. A new Design Flow Such an architecture calls for a vastly different approach compared to building an embedded design using microcontrollers with fixed functionality and external components and developing software/firmware manually. This design approach would be based on an integrated embedded solution with a well-defined hardware partition and software partition. The hardware partition would consist of a scalable silicon platform consisting of a processing sub-system (including memory); an analog sub-system consisting of various functional blocks and commonly used fixed-function peripherals; and programmable digital blocks, all connectable via a true switched fabric. The software partition consists of a development environment which, starting with a blank canvas, allows the user to construct a complete system consisting of: • Commonly used peripherals • Serial Communication Blocks • Standard Analog blocks • Boolean primitives • Hierarchically created components (i.e., created by the user) What will next generation embedded design look like? Page 2 of 5 Published in Embedded.com (http://www.embedded.com) October 2008 [+] Feedback
  • 3. User-created RTL • The software tool would embody several complex functions: • A blank canvas for the user to place and connect components from the list above • A comprehensive list of common pre-built configurable components for users to select from and place on the canvas • The ability to place Boolean primitives, create Components embodying other functions, and specify the behavior of components via RTL • Pick fixed-function and/or programmable resources as required, synthesize user RTL and placed components in the design and map functionality to programmable digital logic • Place and route components on the silicon platform using a switched fabric including connections to the user’s choice of I/O pins • Generate APIs (including APIs for user-defined components) and device drivers for pre-built components. APIs created for the user-defined components would allow passing of parameters to constituent blocks • Allow the functionality of blocks to be dynamically reconfigured based on software commands, if so required. • Generate datasheets for component blocks and the chip-level entity. Once all the above is completed, the user can then add application code working with the compilers and debuggers of his choice to the now-optimized architecture. This process may be, simplistically, represented in a flow-chart as follows: Start with Blank Canvas Pick and place Pre-built Blocks from menus Construct custom components with Blocks and/or RTL Connect components to each other Connect components to Clocking system, DMA, Interrupt, and Pins Build: Synthesize, Place, and Route to create User Programmable Chip Create Application Program, Run, and Debug using standard tools Change/Add/Adapt functionality as needed No Functionality & Features OK ? Yes What will next generation embedded design look like? Page 3 of 5 Published in Embedded.com (http://www.embedded.com) October 2008 [+] Feedback
  • 4. Some examples of configuring various sub-systems are shown below. Clocking: The user is given the following menu to select clock sources from. Selection of a clock source is as easy as selecting and clicking; all connections on-chip, control register set-up, and initial clock configuration is done automatically. Interrupts: An ISR (Interrupt Service Routine) editor allows any digital signal to be connected to an interrupt input. Such tools would allow assigning a particular Interrupt priority and vector number to a signal. DMA: DMA is another example of a global resource (like clocking and interrupts) that many blocks may choose to use (i.e., it is up the user). The DMA editor would show all peripherals connected to the DMA request inputs and will allow priority settings so as to guarantee optimum throughput for all its clients. What does it take to do this? In its current PSoC families, Cypress has implemented a precursor of this new design flow. Experience gathered over several years of implementing and refining that flow with the help of thousands of customers has provide invaluable insight in the new directions the design flow can take. A new embedded design flow such as this cannot be defined in one area. It must encompass: a. A Silicon platform that can be scalable and reusable in terms of both hardware and software. b. A Software development environment that automates component selection and generation as much as possible with the goal of creating software interfaces (APIs) for all customer-specified blocks so that designers can focus on developing their value-added application code. c. The use of standard tools and debuggers. In this way, designers can leverage reusability and take advantage of the learning curve that standard tools exploit, as well as tap into the large ecosystems that grow around industry standard tools. What will next generation embedded design look like? Page 4 of 5 Published in Embedded.com (http://www.embedded.com) October 2008 [+] Feedback
  • 5. Cypress Semiconductor 198 Champion Court San Jose, CA 95134-1709 Phone: 408-943-2600 Fax: 408-943-4730 http://www.cypress.com © Cypress Semiconductor Corporation, 2007. The information contained herein is subject to change without notice. Cypress Semiconductor Corporation assumes no responsibility for the use of any circuitry other than circuitry embodied in a Cypress product. Nor does it convey or imply any license under patent or other rights. Cypress products are not warranted nor intended to be used for medical, life support, life saving, critical control or safety applications, unless pursuant to an express written agreement with Cypress. Furthermore, Cypress does not authorize its products for use as critical components in life-support systems where a malfunction or failure may reasonably be expected to result in significant injury to the user. The inclusion of Cypress products in life-support systems application implies that the manufacturer assumes all risk of such use and in doing so indemnifies Cypress against all charges. PSoC Designer™, Programmable System-on-Chip™, and PSoC Express™ are trademarks and PSoC® is a registered trademark of Cypress Semiconductor Corp. All other trademarks or registered trademarks referenced herein are property of the respective corporations. This Source Code (software and/or firmware) is owned by Cypress Semiconductor Corporation (Cypress) and is protected by and subject to worldwide patent protection (United States and foreign), United States copyright laws and international treaty provisions. Cypress hereby grants to licensee a personal, non-exclusive, non-transferable license to copy, use, modify, create derivative works of, and compile the Cypress Source Code and derivative works for the sole purpose of creating custom software and or firmware in support of licensee product to be used only in conjunction with a Cypress integrated circuit as specified in the applicable agreement. Any reproduction, modification, translation, compilation, or representation of this Source Code except as specified above is prohibited without the express written permission of Cypress. Disclaimer: CYPRESS MAKES NO WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, WITH REGARD TO THIS MATERIAL, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. Cypress reserves the right to make changes without further notice to the materials described herein. Cypress does not assume any liability arising out of the application or use of any product or circuit described herein. Cypress does not authorize its products for use as critical components in life-support systems where a malfunction or failure may reasonably be expected to result in significant injury to the user. The inclusion of Cypress’ product in a life-support systems application implies that the manufacturer assumes all risk of such use and in doing so indemnifies Cypress against all charges. Use may be limited by and subject to the applicable Cypress software license agreement. What will next generation embedded design look like? Page 5 of 5 Published in Embedded.com (http://www.embedded.com) October 2008 [+] Feedback