Standard Interfaces for FPGA Components Joshua Noseworthy Mercury Computer Systems Inc.

Slides:



Advertisements
Similar presentations
웹 서비스 개요.
Advertisements

Copyright © 2006 Data Access Technologies, Inc. Open Source eGovernment Reference Architecture Approach to Semantic Interoperability Cory Casanave, President.
FPGA (Field Programmable Gate Array)
1 System Level Verification of OCP-IP based SoCs using OCP-IP eVC Himanshu Rawal eInfochips, Inc.,4655 Old Ironsides Drive, Suite 385,Santa Clara, CA
OneBridge Mobile Data Suite Product Positioning. Target Plays IT-driven enterprise mobility initiatives Extensive support for integration into existing.
Component-Based Software Engineering Main issues: assemble systems out of (reusable) components compatibility of components.
© 2003 Xilinx, Inc. All Rights Reserved Course Wrap Up DSP Design Flow.
Architecture Representation
Database Systems: Design, Implementation, and Management Tenth Edition
ITIL: Service Transition
1 Introduction to XML. XML eXtensible implies that users define tag content Markup implies it is a coded document Language implies it is a metalanguage.
Technical Architectures
Copyright 2002 Prentice-Hall, Inc. Chapter 4 Automated Tools for Systems Development 4.1 Modern Systems Analysis and Design Third Edition.
ARCS Data Analysis Software An overview of the ARCS software management plan Michael Aivazis California Institute of Technology ARCS Baseline Review March.
1 HW/SW Partitioning Embedded Systems Design. 2 Hardware/Software Codesign “Exploration of the system design space formed by combinations of hardware.
DCS Architecture Bob Krzaczek. Key Design Requirement Distilled from the DCS Mission statement and the results of the Conceptual Design Review (June 1999):
Software Factory Assembling Applications with Models, Patterns, Frameworks and Tools Anna Liu Senior Architect Advisor Microsoft Australia.
Software Issues Derived from Dr. Fawcett’s Slides Phil Pratt-Szeliga Fall 2009.
Foundation and XACTstepTM Software
Educational Computer Architecture Experimentation Tool Dr. Abdelhafid Bouhraoua.
Principle of Functional Verification Chapter 1~3 Presenter : Fu-Ching Yang.
70-291: MCSE Guide to Managing a Microsoft Windows Server 2003 Network Chapter 14: Troubleshooting Windows Server 2003 Networks.
Churning the Most Out of IP-XACT for Superior Design Quality Ayon Dey Lead Engineer, TI Anshuman Nayak Senior Product Director, Atrenta Samantak Chakrabarti.
BIS310: Week 7 BIS310: Structured Analysis and Design Data Modeling and Database Design.
Database Systems: Design, Implementation, and Management Ninth Edition
1/19 Component Design On-demand Learning Series Software Engineering of Web Application - Principles of Good Component Design Hunan University, Software.
THE GITB TESTING FRAMEWORK Jacques Durand, Fujitsu America | December 1, 2011 GITB |
An Introduction to Software Architecture
1 3-General Purpose Processors: Altera Nios II 2 Altera Nios II processor A 32-bit soft core processor from Altera Comes in three cores: Fast, Standard,
Architecture-Based Runtime Software Evolution Peyman Oreizy, Nenad Medvidovic & Richard N. Taylor.
Introduction to XML. XML - Connectivity is Key Need for customized page layout – e.g. filter to display only recent data Downloadable product comparisons.
MAPLDDesign Integrity Concepts You Mean We’re Still Working On It? Sustaining a Design.
WS-Security: SOAP Message Security Web-enhanced Information Management (WHIM) Justin R. Wang Professor Kaiser.
ASIC/FPGA design flow. FPGA Design Flow Detailed (RTL) Design Detailed (RTL) Design Ideas (Specifications) Design Ideas (Specifications) Device Programming.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
Unified Modeling Language, Version 2.0
RELATIONAL FAULT TOLERANT INTERFACE TO HETEROGENEOUS DISTRIBUTED DATABASES Prof. Osama Abulnaja Afraa Khalifah
Verification Plan & Levels of Verification
Web Services Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester,
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
© 2004 Mercury Computer Systems, Inc. FPGAs & Software Components Graham Bardouleau & Jim Kulp Mercury Computer Systems, Inc. High Performance Embedded.
IS 325 Notes for Wednesday August 28, Data is the Core of the Enterprise.
AL-MAAREFA COLLEGE FOR SCIENCE AND TECHNOLOGY INFO 232: DATABASE SYSTEMS CHAPTER 1 DATABASE SYSTEMS Instructor Ms. Arwa Binsaleh.
March 2004 At A Glance NASA’s GSFC GMSEC architecture provides a scalable, extensible ground and flight system approach for future missions. Benefits Simplifies.
- 1 - ©2009 Jasper Design Automation ©2009 Jasper Design Automation JasperGold for Targeted ROI JasperGold solutions portfolio delivers competitive.
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
ProActive components and legacy code Matthieu MOREL.
MDD approach for the Design of Context-Aware Applications.
CASE (Computer-Aided Software Engineering) Tools Software that is used to support software process activities. Provides software process support by:- –
Chapter 4 Automated Tools for Systems Development Modern Systems Analysis and Design Third Edition 4.1.
August 2003 At A Glance The IRC is a platform independent, extensible, and adaptive framework that provides robust, interactive, and distributed control.
1 Unified Modeling Language, Version 2.0 Chapter 2.
EE694v-Verification-Lect7-1- Verification Plan & Levels of Verification The Verification Plan Yesterdays and today’s design environment Design specification.
Copyright (c) 2014 Pearson Education, Inc. Introduction to DBMS.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
March 2004 At A Glance The AutoFDS provides a web- based interface to acquire, generate, and distribute products, using the GMSEC Reference Architecture.
ISCUG Keynote May 2008 Acknowledgements to the TI-Nokia ESL forum (held Jan 2007) and to James Aldis, TI and OSCI TLM WG Chair 1 SystemC: Untapped Value.
Basic Characteristics of Object-Oriented Systems
© 2012 Eucalyptus Systems, Inc. Cloud Computing Introduction Eucalyptus Education Services 2.
LECTURE 5 Nangwonvuma M/ Byansi D. Components, interfaces and integration Infrastructure, Middleware and Platforms Techniques – Data warehouses, extending.
Database Principles: Fundamentals of Design, Implementation, and Management Chapter 1 The Database Approach.
ITIL: Service Transition
Systems Analysis and Design With UML 2
APPLICATION OF DESIGN PATTERNS FOR HARDWARE DESIGN
Database Management System (DBMS)
Chapter 1 Database Systems
System-level verification and Board level verification
An Introduction to Software Architecture
Introduction to Systems Analysis and Design Stefano Moshi Memorial University College System Analysis & Design BIT
Chapter 1 Database Systems
Presentation transcript:

Standard Interfaces for FPGA Components Joshua Noseworthy Mercury Computer Systems Inc.

Presentation Takeaways FPGA Interface Techniques Standard Interfaces Facilitate: –Reusability –Portability –Improved Verification –Better Automation

Why Use Standardized Interfaces? FPGAs play critical roles in modern communication systems –Highly configurable –High performance –Intimate logic I/O interactions –Application-pecific memory hierarchies Increasing system complexity –Increasing heterogeneity FPGAs interacting with DSPs, GPPs, Cell, ASICs –Board-level complexities –Higher I/O demands –Time to market Development methodologies are lagging! –Little or no standardization Minimal reuse, portability

What is a Component? For purpose of this presentation, the characteristic properties of a component are that it: –Is a independent unit of deployment; Separable from its environment, as well as other components –Is a unit of third-party composition; Encapsulates it implementation Clear specification of provisions and requirements Interacts with environment through well-defined interface

FPGA Components FPGA applications are often inherently component-like Simple receiver example DDC, DeMod, and Decode functionality can be independently implemented and deployed in a single processing unit Processing units are completely independent with respect to each other and surrounding environment Provisions and requirements are specifiable for each processing unit Functionality of each unit can be clearly defined

Traditional Techniques for Creating FPGA Components Describe component functionality in an HDL –Behavioral Best chances of producing reusable and portable components –Structural Use of vendor-specific macros limits portability and/or reusability Using third-party IP –Xilinx’s CoreGenerator –Altera’s SOPC Builder –Annapolis MicroSystems CoreFire TM

Standards-Based Component Specification Component interfaces specified according to a common standard Key facet of modern-day component models Constrains solution space –Design to standard interfaces as opposed to inventing your own Improved reuse and portability Facilitates a higher degree of automation Verification assets leveraged across multiple projects Examples: –SPIRIT IP configurability Application composition –Open Core Protocol (OCP) Interface specification

SPIRIT Gear toward configuring and/or generating components and component assemblies Goals: –Increased automation for IP selection, configuration, and integration (side effect of provision of metadata) –Facilitate a multi-vendor IP and design tool flow Metadata (XML) provides a tool interpretable way of describing: –Design history –Object association –Configuration options –Integration requirements Interface agnostic –User defines interface using a schema

Open Core Protocol (OCP) Provides mechanisms to specify high-performance, bus-independent interfaces –Point to point Reduces risk, design time, and cost Increases reusability and portability –Design reuse: OCP helps make components independent of application being used in –Optimize die area: specify bare number of signals required to operate interface –System verification: provides firm boundary around each IP core that can be observed, controlled, and validated Facilitates use of machine automation for purpose of generating higher-level HDL files automatically

OCP Profiles Completely describes an OCP interface A collection of OCP parameters and associated values Limits solution space to a finite number of interfaces An interface’s definition and behavior can be reconstructed using information contained in associated profile Compatibility issues known ahead of time Interface Configuration File –Captures description of a profile as a text file –Legacy format may give way to a more machine-friendly schema (XML) in the future

Overhead Introduced by OCP OCP –Interface definition language –Does not specify how interface behavior is implemented –Provides approximately 92 parameters –Enables a configuration to support almost any type of communication interface Minimizing overhead –Understanding communication requirements Signal widths Reactive/proactive flow control DataHandShake requirements –Choosing correct parameter values –Unnecessary overhead consequence of making poor choices –Making good choices is harder when attempting to leverage profiles across multiple spaces

How OCP Choices Effect Implementation A Case Study: Overview Proactive versus reactive acceptance policies –Cost of implementation depends on application –Proactive Slave advertises its ability to accept requests through asserting/ de-asserting the XThreadBusy signal Master knows ahead of time if requests will be accepted –Stages next cycle of data values accordingly –Reactive Slave asserts the XAccept signal reactively to request Master asserts next request only after observing the assertion of appropriate XAccept signal

How Choices Effect Implementation A Case Study: Design Summary Proactive Accept –Requires storage device to buffer requests presented on same cycle SThreadBusy is asserted In some cases this storage can be significant –Inherently supports best-case throughput Reactive Accept –Doesn’t require buffering –Increases state machine complexity Especially if best case throughput is desired Conclusion –Understand implications of profile choices –Understand design requirements –Make right profile choices given design requirements Command Assertion Command Acceptance Mdata Push Pop SThreadBusy

Automation: Facilitated by Standardization Finite number of interfaces Interface behavior and configuration –Described independently of IP Meta-languages –Extensible Markup Language (XML) –Easily understood by machines Infrastructure providers provide standard interfaces to which components can connect Applications are specified independently of IP using same meta-language Tool parses meta-data Tool instantiates appropriate application and infrastructure components Connections made based on meta-data provided

Improved Verification Through Standardization Verification assets are expensive to develop Using application-specific interfaces results in poorly leveraged verification assets –Each application uses it own unique set of interfaces –New verification assets created for each new project Architect verification assets to support standard interfaces Verifications assets become leveragable across multiple areas –Initial development can be more costly –Costs are recovered quickly

Conclusions Standardized FPGA interfaces facilitate: –Reusability –Portability –Automatibility –Verification Leveraging –SCA Compliance Overhead is predictable –Minimized by making the right choices

Questions?