Recent
Adacore Nvidia Promo

Ada and RISC-V Secure Nvidia’s Future

Nvidia tends to hype the machine-learning (ML) capabilities of its system-on-chip (SoC) solutions like its DRIVE AGX Orin that targets automotive applications. Often lost in the mix is the security processor that is part of the package but these are critical to safe and secure applications.

Nvidia's security support has used a custom processor, but it's moving to RISC-V for future implementations. The company isn't alone in its adoption of RISC-V. Western Digital is taking advantage of SiFive’s RISC-V designs across the board for its storage solutions. NVIDIA isn't changing the SoC’s core processors at this point. These are still Arm Cortex cores, but the security processor is essentially isolated from the rest of the system and it runs its own firmware.

That firmware will not be written in C though. It is being done in SPARK, a provable subset of the Ada programming language. Ada 2012 added contracts to that language and SPARK takes advantage of this feature. It allows programmers to specify details like the characteristics of procedure inputs and outputs. The compiler can then enforce these rules for calls to the procedure as well as how the results will be used.

The contract support enables the compiler to prove that a procedure does what it is desired, and the code that calls and uses the results will operate as specified by the contracts and implicit contracts within the language definition. An example of the implicit language checking is the range checking done by Ada for arrays and strings. One of the biggest problems with C and C++ code has been buffer overruns, which can't happen with Ada.

The advantage of including the contract information and allowing the compiler to do the checking is that it can also remove many of the runtime checks often associated with Ada, because they are unnecessary. For example, the implicit array access range checks can be removed from the runtime if it's known that an index to the array can never exceed the size of the array.

Ada’s use in avionics is well-known, but it's also ideal for any embedded application. It can be extremely useful in safety applications like medical and automotive. Though the amount of code in a self-driving car will typically exceed that in even an advanced fighter jet, it will need the same level of scrutiny to provide safe and reliable operation. It makes a lot of sense to have the compiler checking that the code is doing what's desired rather than having humans do that same chore by examining the code.

“Self-driving cars are extremely complex and require sophisticated software that needs the most rigorous standards out there,” said Daniel Rohrer, vice president of Software Security at Nvidia. “Taking measures like incorporating Ada and SPARK languages into Nvidia platforms can improve the robustness and assurances of our automotive security.”

C and C++ remain the primary languages for embedded programming. However, there are advantages to using Ada and SPARK, including cost savings when looking at the total cost of ownership (TOC). Open-source versions of Ada and SPARK tools are available as well as online training.

Silicon Reg Image 022620

A Product Lifecycle Plan You Can Believe In

Date:  Wednesday, February 26, 2020    
Time: 
2:00 PM Eastern Standard Time    
Sponsor:
SiliconExpert Technologies
Duration: 30 Minutes

Register Today!

Summary

In 2020, OEMs face an increasing number of unpredictable factors that put production schedules, order fulfillment and customer satisfaction at risk. Volatile Chinese tariffs, component obsolescence, counterfeit parts, delays in component lead times, and more can impact the development, procurement and delivery stages of every product in development and production. Are you tired of spending millions to re-design and requalify parts due to supply chain disruptions? Then you’re ready to take the Product Lifecycle Challenge. 

In this webinar, we will discuss how you can:

  • Design and maintain sustainable products
  • Make informed parts selection decisions
  • Avoid obsolescence risk
  • Ensure compliance with environmental and governmental legislations
  • Make smarter decisions based on multi-sourcing and available inventory
  • Cross-reference components for form, fit, and function across 15,000 suppliers
  • Create a parts management program that anticipates disruption in the supply chain
  • Deploy Business Intelligence-as-a Service

Most importantly, you’ll learn the tools and techniques some manufacturers use to save an average of $600,000 each year by reclaiming lost man-hours, mitigating production delays, and avoiding product re-designs. 

Speaker

Vernon Densler 770

Vernon R Densler, Sr. Product Manager, SiliconExpert Technologies, Inc.

Vernon Densler is a Senior Product Manager at SiliconExpert. He has been with SiliconExpert since 2018 and previously spent 18 years at Northrop Grumman as both a Systems Engineer and Manager in charge of Obsolescence Management and Spares & Repairs. Vernon holds a BS in Computer Information Systems, Management from Florida Institute of Technology. Vernon frequently speaks at industry events and symposiums, where he is able to use his experience in the Parts Management field to assist in furthering best practices and the Parts Management discipline.

Silicon Footer 2 26 20 770

Register