FPGA IP Verification for Use in Severe Environments 2005 MAPLD International Conference September 2005 Paper #237
Download
Report
Transcript FPGA IP Verification for Use in Severe Environments 2005 MAPLD International Conference September 2005 Paper #237
FPGA IP Verification for Use
in Severe Environments
2005 MAPLD International Conference
September 2005
Paper #237
Summary
Trends
With smaller geometries, more functions fit into one device
With synthesizable HDL, design-reuse is practical
With large FPGA devices, gate-level design is difficult
Resource-intensive
Takes a long time
Increases likelihood of error
IP proven by customers in many applications is often more
mature than internal IP
How can a supplier create pre-built IP that meets
the needs of many customers while reducing
risks to space flight?
Land
2
MAPLD 2005/237
IP that Reduces Risk
Structured Development
Robust design process
Additional concerns for space applications
Thorough verification
Deliverables and documentation for ease of use
MIL-STD-1553 Product Example
Products
Design Flow
Test Results
Customer-proven
Land
3
MAPLD 2005/237
Robust Design Process
Structured, design flow
Proposal
Justification for development and creation of the project plan
Definition and Planning
Preliminary datasheet creation defining the core
Development
The core is implemented and deliverables are created
Verification and Validation
Testing against specification (ie. MIL-STD-1553; PCI PlugFest)
Release
Release of product for volume sales
Configuration Management, Feedback and Revision
Phase
Land
Gate
4
MAPLD 2005/237
Proposal
Business case and/or justification
Lead customers and needs
Product features and benefits
Silicon families including environments
COM, IND, MIL, AUTOMOTIVE
High-level functional requirements
Preliminary risk review
Project timescales
Land
5
MAPLD 2005/237
Definition and Planning
Plans
Development – datasheet and schedules
Verification and validation – test plan
Development plan and preliminary datasheet
Architectural design elements
Functional block diagram
Product Summary
General Description
Detailed design elements
Core hardware interfaces
Core software interfaces
Interface Timing
Additional discussion – mathematical theory, etc.
Coding standards and code coverage requirements
Land
6
MAPLD 2005/237
Definition and Planning (p2)
Test plan
Verification plan - determine verification level
1. Simulation - every core
2. Hardware – test core on test platform (ie. FPGA on a PCB)
3. Hardware versus a tester
4. Hardware tested to a standard or by a third party
Validation - proof against a known entity
Levels 3 and 4 are validation
Customer demand is driving toward more formal documentation of
process for validation, such as DO-254 certification kits
Hardware testing
Determine functional requirements of test platform
Design and manufacture test platform in parallel to development
Land
7
MAPLD 2005/237
Detailed Design
Core and testbenches
Source is coded in standard RTL
Verilog (IEEE 1364-2001 Revision C)
VHDL (IEEE 1076-1987 or 1993; IEEE 1164)
Include comments so an engineer can understand code
Design flow (Actel Libero Suite)
Simulation – Mentor ModelSim
Synthesis – Synplify Synplicity
Place and Route – Actel Designer
Physical Optimization – Magma Palace
Netlist and layout considerations
Synthesis scripts for repeatable netlist generation
Add timing constraints, if needed
Example pinouts are often provided
Land
8
MAPLD 2005/237
Detailed Design (p2)
Typical Delivery Structure
Structure matters for design – reuse with a tool flow
Land
9
MAPLD 2005/237
Detailed Design (p3)
Delivery Structure Descriptions
Directory
Contents
Provided with
docs
Pdf files of all the core
documentation
EVAL, NETLIST, RTL
layout
Example layout database files
for the supported families
NETLIST, RTL
mti_libero
Compiled Simulation Models
for Libero
EVAL, NETLIST, RTL
mti_modelsim
Compiled Simulation Models
for full up Modelsim
EVAL, NETLIST, RTL
netlists
Netlists for the supported
families with & without IO
NETLIST, RTL
rtl
Complete Source code
RTL
source
Top level source code etc
NETLIST, RTL
Land
10
MAPLD 2005/237
Detailed Design (p4)
GUI or delivery platform
Modern, parametric cores often have a software interface
Own interface – typically C code
IP deployment platform – SPIRIT interface
Considerations for space applications
Actel devices are SEU immune, but some customers requested
creation of cores with ‘fail-safe state machines’
Adds redundancy/risk reduction
Synplicity default could lock if SEU upset
Certification envelope
VHDL and Verilog versions
Different speeds
Higher coverage standards and well-explained variances
Toggle and code coverage target of 100%
Customers frequently desire error detection and correction for memory
Tool flow documented with versions, for exact design replication
Land
11
MAPLD 2005/237
Verification and Validation
Verify per the test plan
Simulations
RTL
Gate-level
Hardware platform
Verify FPGA programming via a checksum test
Evaluate against an analyzer, another HW platform and/or validated
tester
Verify key parameters – frequencies, instructions, timing
Check corner cases and unlikely scenarios
Validate
Actual validation required will vary for each core
MIL-STD-1553 cores have 3rd-party review at Test Systems, Inc.
A validation report review - actions and responses
Land
12
MAPLD 2005/237
Release
Design review
Re-check all elements of directory structure exist
Re-check results of simulation, hardware and validation tests
Review coverage numbers
Check actual design versus original specification (datasheet)
Archive files
Core database
Provide certified core layout databases
Final, production documents
Release
Signoff (ECN) by multiple parties
After release
Create mechanism to track errors and enhancements
Land
13
MAPLD 2005/237
Revision and Configuration
A core revision can be caused by
Discovery of a functional error in the core
Log findings – Actel has ‘SAR’ system
Enhancement request for additional or fewer functions
Support of new Actel FPGA family
Changes to Actel software or device characterization
Revision development flow is similar
Last production release is the starting point
Code changes are documented and included in each release
Configuration management
Have a system that stores production and work-in-progress
versions of cores (does not need to be the same)
Have a system to log necessary changes to core
Land
14
MAPLD 2005/237
IP that Reduces Risk
Structured Development
Robust design
Thorough verification
Documentation for ease of use
Additional Concerns for Space Applications
MIL-STD-1553 Product Example
Products
Design Flow
Test Results
Customer-proven
Land
15
MAPLD 2005/237
MIL-STD-1553 Products
Simple, small remote terminal interface core
Simple, small bus controller interface core
Combined BC, RT, MT with Advanced RT features
Boards
Antifuse and Flash FPGA Platforms
Additional Information
Designing MIL-STD-1553 with 8051 Host
Design example code to link cores
Land
16
MAPLD 2005/237
Core1553BRM example
Proposal
A large portion of market had ‘advanced RT features’
Circular buffers and indexing for bulk data transfers
Internal (eliminates system OH) or external (small) legalization
Separate memory for broadcast messages
Interrupt history
Competitors also had combined-function products with BC, RT and MT
Definition
MIL-STD-1553 Specification
Preliminary datasheet highlighting the features in the proposal
Development
Developed remote terminal, bus controller and bus monitor with
appropriate, more-complex instruction code
Used Manchester encoder/decoder from Core1553BRT to reduce risk
Land
17
MAPLD 2005/237
Core1553BRM Example (p2)
Validation
Stable, tested code with reviewed test results
Reviewed key parameters, such as 12, 16, 20 and 24 MHz
operation
Tested against existing MIL-STD-1553 COTS tester and validated
Core1553 Evaluation Board
Certified Core1553BRM Development Kit at Test Systems, Inc
completely for 12 and 24 MHz and partially for 16, 20 MHz
Release gives first-rate integration
Core builds complete and in system, board release, release note,
user guide, data sheet, certification papers
Solution improves integration
Application note, reference design and example designs
available
Land
18
MAPLD 2005/237
Core1553 Customers
Core1553
Over 30 customers through 2004
Many customers are top-tier
aerospace customers
Many repeat customers
Applications
Satellite payload
Military aircraft
Spacecraft IO board
Military helicopter weapons
Avionics testers
Land
19
MAPLD 2005/237
One-stop Low-risk SOC FPGA
Spacecraft I/O Board Example
Shared Memory
(on or off-chip)
ASM51 MCU
(Core8051)
Serial
Channel
Remote
Monitor
Land
Prog.
I/O
Sensor
Module
PCI bus to
instrument panel
1553 bus to
rest of craft
PCI
(CorePCI)
1553 RT
(Core1553BRT)
Memory Data Bus
Special Function Register Bus
Synchronous Serial
Channel (CoreSDLC)
Asynchronous Serial
Channel (CoreUART)
Data Transfer Port
Avionics Control Port
20
MAPLD 2005/237
Conclusion
Pre-built and verified IP can reduce risk, if
A structured, robust development process is followed
Additional concerns for space applications are considered
Verification and validation is demonstrated
Deliverables and documentation ease use
Use by many customers increases robustness as the core is
used and tested in a variety of environments
Land
21
MAPLD 2005/237