Article

 

 

 

 

 

Migrating From Verilog To System Verilog: Brave New World Of Soc Verification

Rahul V Shah
Sibridge Technologies
rahulv.shah@sibridgetech.com

Abstract: A few years ago, the ASIC industry used two HDLs for ASIC development, Verilog and VHDL. Soon C and C++ were viewed as a means to reduce the complexity of verification. But as the complexity of the chips grew, more languages came to the rescue: HVLs (High-Level Verification Languages) in different flavors emerged with “e”, “Vera” and ‘System Verilog” among the top three contenders as far as verification is concerned. This paper chronicles a Verilog verification engineer’s experience of migrating from the world of older HDL languages into the brave new world of HVLs like” System Verilog”.

There were great old days when people use to talk about Verilog and VHDL in terms of “Hardware Design Language (HDL)” and I would also say “Hardware Verification Languages (HVL)” since those were the only two which were also used for verification of the design. As the industry grew rapidly, the term “Time To Market (TTM)” came into picture. The trend of “C” Level modeling for verification came into existence to help out with more complex functions for which these designs were built,.

But as Moore’s law held true, the complexity kept on increasing, starting a race between the gate-counts of chips and what the current EDA tools could support. Soon it gave birth to many different approaches to handle the new complex chips and still meet TTM requirements. Many tools and languages came into existence including various new verification languages, emulations boards; hardware accelerators to speed up the process of verification. Like any other new language, engineers took time to validate and accept the new HVLs. System Verilog, Specman and Vera are the main members of the HVL family. These languages were designed just for “Verification”; they are promoted truly as verification languages and provide plenty of features to make verification easy.

But if you ask a verification engineer coming from a basic Verilog background, the first question will pop into his head is “What’s the big deal? Anything you can do in these languages I can still do the same using Verilog. So, why learn a new language and syntax and pay for it too?” To answer some of these questions let’s look at some of the key features of these HVL languages.

Powerful Randomization: Before I switched over to System Verilog based verification, if someone would have told me that “HVL has a very powerful randomization engine” my reaction would be:“I have the complete elaborated test plan in place. I have each and very possible condition well mapped out and I have taken care of everything.” But, normally we take care of all the conditions we can think about, but we cannot go beyond that. No matter even we use the fancy random functions in Verilog and PERL we are still not really randomizing when compared to the same in an HVL like System Verilog. It can be described quite simply as “Verification engineer can only write testcases or which you can think, hence limiting you with the verification engineer’s experience”.

  | 1 | 2 | 3 | 4 | 5 | 6 | 7 | Next >>

  Silicon Design | Design & Verf. IP | Embedded Design | About Us | Partners | Contact