SlideShare a Scribd company logo
1 of 24
Download to read offline
TM
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc.,
Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink
and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc.
Using Assertions in AMS Verification
December 6, 2010
Scott Little (scott.little@freescale.com)
AMS Verification Engineer
Why assertions?
►I shouldn’t have to evangelize to this audience, but…
►Characteristics of assertions:
• Compact
• Mathematically precise semantics
• Reusable across verification methodologies and
Simulation/formal
Module/SoC level
TM
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc.,
Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink
and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 2
Module/SoC level
• Built-in coverage collection and metrics
►Quickly identify failing condition
►Standard error reporting mechanism
AMS verification
►Still a largely ad hoc process
• Automated block-level regression suites rarely exist
• General verification rigor we have come to expect with digital
verification is often absent
Immature verification plans
Little or no random stimulus
Coverage is not collected
TM
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc.,
Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink
and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 3
►Disconnect between system-level and block-level
• Minimal sharing of checkers/monitors
If automatic checkers/monitors exist at all
• Testing focuses on local behaviors not interaction with the system
Assertion-based AMS verification
►Assertions can:
• Collect coverage
• Be checked all levels of the hierarchy
• Check interface assumptions
►Digital assertions have limitations
• Real values cannot be referenced (according to the LRM)
This works in practice for most simulators
TM
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc.,
Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink
and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 4
This works in practice for most simulators
• Time is aligned to sampling events (clocks)
• Time is discrete and can’t be referenced directly
• Continuous quantities (voltage, current) can’t be accessed directly
►What do we do?
• Approximate with current languages
• Enhance current modeling/assertion languages
Our AMS verification methodology: A brief glimpse
►Analog blocks are designed and verified [designer]
►Abstract HDL model is created for the block [designer/modeler]
• Written for use in SoC verification
Performance is key
Captures high-level functionality
►Abstract HDL model is verified vs. spec [modeler/verifier]
• Assertions added and checked here
TM
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc.,
Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink
and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 5
• Assertions added and checked here
►Abstract HDL model is verified vs. schematic [modeler/verifier]
• Pin names and directions match
• High-level behavior matches
• Timing may differ
►Abstract HDL model is used in SoC-level verification [verifier]
What do we check with assertions?
►Properties that are difficult to model but easy to check
►Interface assumptions
• Illegal input combinations, sequences, or configurations
Experimental feature is never enabled
Analog inputs are isolated during digital test modes
►Power mode transitions
• Check for conditions that result in floating nodes/leakage paths
TM
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc.,
Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink
and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 6
• Check for conditions that result in floating nodes/leakage paths
Block is never enabled without all power supplies present
Level shifter is properly isolated when one supply goes down
►Timing relationships
• Check “setup” times for analog blocks
Circuit must be functional within the specified time after start-up
Output is stable within the specified time after being enabled
Where do we write AMS assertions?
►SystemVerilog
• Powerful SystemVerilog Assertions (SVAs) are available
• Can’t access continuous quantities
• Tend to use carefully timed clocks and multiclocked properties
►Verilog-AMS
• Can’t write actual assertions
• Have full access to continuous quantities
TM
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc.,
Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink
and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 7
• Have full access to continuous quantities
• Use modeling code to approximate assertions
►SystemVerilog/Verilog-AMS
• Digitize continuous signals using Verilog-AMS monitors
• Pass digitized signals into the SystemVerilog module
• Write assertions using the digitized signals, digital signals, and carefully
timed clocks
Verilog-AMS monitors example
Property: To avoid floating nodes ensure that when vdd1 is powered down
either isolate is high or vdd2 is powered down. For the purpose of
determining if a supply is powered up/down we will ignore “droops” of less
than 25 ns.
Verilog-AMS checker
Verilog-AMS monitors
@cross(V(vdd1) – 5.0, +1)
TM
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc.,
Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink
and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 8
//inertial delays squash short droops
//Note: initialization is ignored
assign #25 vdd1_down = !vdd1_gt_5;
assign #25 vdd2_down = !vdd2_gt_5;
always @(vdd1_down,isolate,vdd2_down)
if(vdd1_down & !(isolate|vdd2_down))
$error(“ERROR: Floating node!”);
@cross(V(vdd1) – 5.0, +1)
vdd1_gt_5 <= 1’b1;
@cross(V(vdd1) – 5.0, -1)
vdd1_gt_5 <= 1’b0;
@cross(V(vdd2) – 5.0, +1)
vdd2_gt_5 <= 1’b1;
@cross(V(vdd2) – 5.0, -1)
vdd2_gt_5 <= 1’b0;
Verilog-AMS monitors example
//inertial delays squash short droops
//Note: initialization is ignored
assign #25 vdd1_down = !vdd1_gt_5;
assign #25 vdd2_down = !vdd2_gt_5;
always @(vdd1_down,isolate,vdd2_down)
if(vdd1_down & !(isolate|vdd2_down))
$error(“ERROR: Floating node!”);
@cross(V(vdd1) – 5.0, +1)
vdd1_gt_5 <= 1’b1;
@cross(V(vdd1) – 5.0, -1)
vdd1_gt_5 <= 1’b0;
@cross(V(vdd2) – 5.0, +1)
vdd2_gt_5 <= 1’b1;
@cross(V(vdd2) – 5.0, -1)
vdd2_gt_5 <= 1’b0;
vdd1
TM
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc.,
Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink
and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 9
vdd2
isolate
vdd1_gt_5
vdd2_gt_5
vdd1_down
SVAs & Verilog-AMS monitors example
Property: To avoid floating nodes ensure that when vdd1 is powered down
either isolate is high or vdd2 is powered down.
SystemVerilog Assertion
Verilog-AMS monitors
@cross(V(vdd1) – 5.0, +1)
TM
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc.,
Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink
and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 10
property noFloatingNodes;
@(negedge vdd1_gt_5) 1'b1
##0
@(posedge clk_1ns) (!vdd1_gt_5)[*25]
|->
!vdd2_gt_5 | isolate throughout !vdd1_gt_5[*0:$]
;
endproperty
@cross(V(vdd1) – 5.0, +1)
vdd1_gt_5 <= 1’b1;
@cross(V(vdd1) – 5.0, -1)
vdd1_gt_5 <= 1’b0;
@cross(V(vdd2) – 5.0, +1)
vdd2_gt_5 <= 1’b1;
@cross(V(vdd2) – 5.0, -1)
vdd2_gt_5 <= 1’b0;
SVAs & Verilog-AMS monitors example
property noFloatingNodes;
@(negedge vdd1_gt_5) 1'b1
##0
@(posedge clk_1ns) (!vdd1_gt_5)[*25]
|->
!vdd2_gt_5 | isolate throughout !vdd1_gt_5[*0:$]
;
endproperty
@cross(V(vdd1) – 5.0, +1)
vdd1_gt_5 <= 1’b1;
@cross(V(vdd1) – 5.0, -1)
vdd1_gt_5 <= 1’b0;
@cross(V(vdd2) – 5.0, +1)
vdd2_gt_5 <= 1’b1;
@cross(V(vdd2) – 5.0, -1)
vdd2_gt_5 <= 1’b0;
vdd1
TM
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc.,
Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink
and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 11
vdd1
vdd2
isolate
vdd1_gt_5
vdd2_gt_5
vdd1_down
What bugs have we found?
►Incorrect enable sequencing
• The system was enabling an analog block before it was stable. This
early enable “crashes” the block.
►Floating analog blocks
• Designer misunderstood the system configuration in a key low power
mode. The isolation logic was incorrect and resulted in a large chunk of
floating analog circuitry
TM
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc.,
Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink
and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 12
►Incorrect initialization
• For correct behavior leaving reset, specific outputs must be pulled
low/high. This system-level requirement was not understood or
implemented by the block designer.
►Inconsistent specifications
• The minimum operating voltage was specified in an incompatible way
between key blocks.
What is the future of AMS assertions?
►SVA is being added to Verilog-AMS
►Analog SVA (ASVA) effort is underway in Accellera and IEEE
►ASVA is an extension of SVA
• Real values in boolean expressions
• Realtime (i.e., continuous time) semantics
• New realtime operators in sequences and properties
►Draws on Verilog-AMS
TM
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc.,
Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink
and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 13
►Draws on Verilog-AMS
• Eventually, ASVA will be a part of a unified SystemVerilog-AMS
language
SVAs in Verilog-AMS modules example
Property: To avoid floating nodes ensure that when vdd1 is powered down
either isolate is high or vdd2 is powered down.
SystemVerilog Assertion in a Verilog-AMS module
TM
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc.,
Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink
and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 14
property noFloatingNodes;
@(cross(V(vdd1) – 5.0, -1) 1'b1
##0
@(posedge clk_1ns) (V(vdd1) < 5.0)[*25]
|->
V(vdd2)<5.0|isolate throughout (V(vdd1)<5.0)[*0:$]
;
endproperty
Verilog-AMS monitor
@cross(V(vdd2) – 5.0, 0)
;
SVAs in Verilog-AMS modules example
property noFloatingNodes;
@(cross(V(vdd1) – 5.0, -1) 1'b1
##0
@(posedge clk_1ns) (V(vdd1) < 5.0)[*25]
|->
V(vdd2)<5.0|isolate throughout (V(vdd1)<5.0)[*0:$]
;
endproperty
@cross(V(vdd2) – 5.0, 0)
;
vdd1
TM
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc.,
Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink
and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 15
vdd1
vdd2
isolate
vdd1_gt_5
vdd2_gt_5
vdd1_down
ASVA extension requirements
►ASVA committee has voted on extension requirements
• ASVA should include all existing SVA
• The meaning of existing constructs should not change
• New constructs should provide realtime capabilities useful for AMS
verification
►Existing SVA has a discrete semantic framework
• Based on linear temporal logic and regular expressions
TM
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc.,
Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink
and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 16
• Based on linear temporal logic and regular expressions
►Problem: Find a “good” way to extend SVA to realtime
• Allow free intermingling of old and new operators, not just a union of old
and new forms
• Non-trivial
Extending SVA to realtime
►Some extensions are straightforward
• Logical connectives (and, or, not) have the same meaning
• Non-temporal implications (|->, if-else) have the same meaning
• Clocked booleans (ignoring sampling questions)
►Some extensions have been studied in external research
• Realtime linear temporal logic operators
p until[0:1.5m] q requires q to occur within 1.5 ms of the start of the
TM
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc.,
Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink
and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 17
p until[0:1.5m] q requires q to occur within 1.5 ms of the start of the
property
►What about realtime sequences?
Realtime sequences
►We invented a realtime semantic framework for sequences based
on continuous intervals
• Proved equivalence between the new realtime semantics and the
existing SVA semantics for the SVA sequence forms
►Introduced three new primitive realtime sequence forms:
• b: realtime (i.e., unclocked) boolean
• r without @(c): sequence without an event
TM
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc.,
Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink
and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 18
• r without @(c): sequence without an event
• b[*a1:a2]: boolean “smear”, i.e., boolean holds continuously for a
specified time range
►Introduced several new derived realtime sequence forms:
• r #[a:b] s: realtime concatenation
• r #0 s: realtime fusion
• b[~>1]: realtime goto
Realtime sequence examples
►a is true and b is false continuously for 10.5 ns
• (a && !b)[*10.5n]
►a is true and 9.7 ms later b is true
• a #9.7m b
►From the beginning of the interval, advance to the first time where a
is high, then find b and c high 1.6 ns later, and also ensure that b
subsequently stays high continuously for 5.1 ms
TM
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc.,
Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink
and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 19
subsequently stays high continuously for 5.1 ms
• a[->1] #1.6n (b && c) #0 b[*5.1m]
ASVA example
Property: From the time we see a valid bias voltage until the circuit gets
enabled must be >= 5 µs.
ASVA
TM
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc.,
Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink
and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 20
property noFloatingNodes;
@(cross(V(vdd1) – 5.0, -1) 1'b1
#0
(V(vdd1) < 5.0)[*25.0n]
|->
V(vdd2) < 5.0 | isolate throughout (V(vdd1) < 5.0)[*0.0:$]
;
endproperty
ASVA example
property noFloatingNodes;
@(cross(V(vdd1) – 5.0, -1) 1'b1
#0
(V(vdd1) < 5.0)[*25.0n]
|->
V(vdd2) < 5.0 | isolate throughout (V(vdd1) < 5.0)[*0.0:$]
;
endproperty
vdd1
TM
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc.,
Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink
and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 21
vdd1
vdd2
isolate
vdd1_gt_5
vdd2_gt_5
vdd1_down
Conclusions
►AMS assertions are a powerful tool in the verification toolbox
• They are very useful when checking for illegal interface conditions,
power down conditions, and timing sequences
• They are in the process of maturing
• Even while maturing they are very usable
• They help find real bugs
TM
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc.,
Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink
and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 22
►More information on the standards effort:
• http://www.vhdl.org/twiki/bin/view.cgi/VerilogAMS/AmsAssertions
Acknowlegements
►I would like to thank the following people for their collaboration:
• John Havlicek
• Himyanshu Anand
• Chris Stoll
• Ben Ehlers
• Neil Spake
TM
Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc.,
Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink
and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 23
TM

More Related Content

What's hot

System verilog assertions
System verilog assertionsSystem verilog assertions
System verilog assertionsHARINATH REDDY
 
System verilog verification building blocks
System verilog verification building blocksSystem verilog verification building blocks
System verilog verification building blocksNirav Desai
 
Session 6 sv_randomization
Session 6 sv_randomizationSession 6 sv_randomization
Session 6 sv_randomizationNirav Desai
 
System verilog important
System verilog importantSystem verilog important
System verilog importantelumalai7
 
Functional verification techniques EW16 session
Functional verification techniques  EW16 sessionFunctional verification techniques  EW16 session
Functional verification techniques EW16 sessionSameh El-Ashry
 
System Verilog Functional Coverage
System Verilog Functional CoverageSystem Verilog Functional Coverage
System Verilog Functional Coveragerraimi
 
verification_planning_systemverilog_uvm_2020
verification_planning_systemverilog_uvm_2020verification_planning_systemverilog_uvm_2020
verification_planning_systemverilog_uvm_2020Sameh El-Ashry
 
System verilog coverage
System verilog coverageSystem verilog coverage
System verilog coveragePushpa Yakkala
 
SOC Verification using SystemVerilog
SOC Verification using SystemVerilog SOC Verification using SystemVerilog
SOC Verification using SystemVerilog Ramdas Mozhikunnath
 
Verification flow and_planning_vlsi_design
Verification flow and_planning_vlsi_designVerification flow and_planning_vlsi_design
Verification flow and_planning_vlsi_designUsha Mehta
 
Session 9 advance_verification_features
Session 9 advance_verification_featuresSession 9 advance_verification_features
Session 9 advance_verification_featuresNirav Desai
 
Efficient Methodology of Sampling UVM RAL During Simulation for SoC Functiona...
Efficient Methodology of Sampling UVM RAL During Simulation for SoC Functiona...Efficient Methodology of Sampling UVM RAL During Simulation for SoC Functiona...
Efficient Methodology of Sampling UVM RAL During Simulation for SoC Functiona...Sameh El-Ashry
 
Introduction to System verilog
Introduction to System verilog Introduction to System verilog
Introduction to System verilog Pushpa Yakkala
 
SYSTEM DESIGN USING VERILOG HDL.pdf
SYSTEM DESIGN USING VERILOG HDL.pdfSYSTEM DESIGN USING VERILOG HDL.pdf
SYSTEM DESIGN USING VERILOG HDL.pdfMohanKumar737765
 
Verification Strategy for PCI-Express
Verification Strategy for PCI-ExpressVerification Strategy for PCI-Express
Verification Strategy for PCI-ExpressDVClub
 
The Verification Methodology Landscape
The Verification Methodology LandscapeThe Verification Methodology Landscape
The Verification Methodology LandscapeDVClub
 
UVM Methodology Tutorial
UVM Methodology TutorialUVM Methodology Tutorial
UVM Methodology TutorialArrow Devices
 

What's hot (20)

System verilog assertions
System verilog assertionsSystem verilog assertions
System verilog assertions
 
System verilog verification building blocks
System verilog verification building blocksSystem verilog verification building blocks
System verilog verification building blocks
 
Ral by pushpa
Ral by pushpa Ral by pushpa
Ral by pushpa
 
Session 6 sv_randomization
Session 6 sv_randomizationSession 6 sv_randomization
Session 6 sv_randomization
 
System verilog important
System verilog importantSystem verilog important
System verilog important
 
Functional verification techniques EW16 session
Functional verification techniques  EW16 sessionFunctional verification techniques  EW16 session
Functional verification techniques EW16 session
 
System Verilog Functional Coverage
System Verilog Functional CoverageSystem Verilog Functional Coverage
System Verilog Functional Coverage
 
Uvm dac2011 final_color
Uvm dac2011 final_colorUvm dac2011 final_color
Uvm dac2011 final_color
 
verification_planning_systemverilog_uvm_2020
verification_planning_systemverilog_uvm_2020verification_planning_systemverilog_uvm_2020
verification_planning_systemverilog_uvm_2020
 
System verilog coverage
System verilog coverageSystem verilog coverage
System verilog coverage
 
SOC Verification using SystemVerilog
SOC Verification using SystemVerilog SOC Verification using SystemVerilog
SOC Verification using SystemVerilog
 
Verification flow and_planning_vlsi_design
Verification flow and_planning_vlsi_designVerification flow and_planning_vlsi_design
Verification flow and_planning_vlsi_design
 
Session 9 advance_verification_features
Session 9 advance_verification_featuresSession 9 advance_verification_features
Session 9 advance_verification_features
 
Efficient Methodology of Sampling UVM RAL During Simulation for SoC Functiona...
Efficient Methodology of Sampling UVM RAL During Simulation for SoC Functiona...Efficient Methodology of Sampling UVM RAL During Simulation for SoC Functiona...
Efficient Methodology of Sampling UVM RAL During Simulation for SoC Functiona...
 
Axi
AxiAxi
Axi
 
Introduction to System verilog
Introduction to System verilog Introduction to System verilog
Introduction to System verilog
 
SYSTEM DESIGN USING VERILOG HDL.pdf
SYSTEM DESIGN USING VERILOG HDL.pdfSYSTEM DESIGN USING VERILOG HDL.pdf
SYSTEM DESIGN USING VERILOG HDL.pdf
 
Verification Strategy for PCI-Express
Verification Strategy for PCI-ExpressVerification Strategy for PCI-Express
Verification Strategy for PCI-Express
 
The Verification Methodology Landscape
The Verification Methodology LandscapeThe Verification Methodology Landscape
The Verification Methodology Landscape
 
UVM Methodology Tutorial
UVM Methodology TutorialUVM Methodology Tutorial
UVM Methodology Tutorial
 

Viewers also liked

Stop Writing Assertions! Efficient Verification Methodology
Stop Writing Assertions! Efficient Verification MethodologyStop Writing Assertions! Efficient Verification Methodology
Stop Writing Assertions! Efficient Verification MethodologyDVClub
 
OpenSPARC T1 Processor
OpenSPARC T1 ProcessorOpenSPARC T1 Processor
OpenSPARC T1 ProcessorDVClub
 
Cisco Base Environment Overview
Cisco Base Environment OverviewCisco Base Environment Overview
Cisco Base Environment OverviewDVClub
 
Verification of Graphics ASICs (Part II)
Verification of Graphics ASICs (Part II)Verification of Graphics ASICs (Part II)
Verification of Graphics ASICs (Part II)DVClub
 
Verification of Graphics ASICs (Part I)
Verification of Graphics ASICs (Part I)Verification of Graphics ASICs (Part I)
Verification of Graphics ASICs (Part I)DVClub
 
Trends in Mixed Signal Validation
Trends in Mixed Signal ValidationTrends in Mixed Signal Validation
Trends in Mixed Signal ValidationDVClub
 
Validation and Design in a Small Team Environment
Validation and Design in a Small Team EnvironmentValidation and Design in a Small Team Environment
Validation and Design in a Small Team EnvironmentDVClub
 
Validating Next Generation CPUs
Validating Next Generation CPUsValidating Next Generation CPUs
Validating Next Generation CPUsDVClub
 
Verification In A Global Design Community
Verification In A Global Design CommunityVerification In A Global Design Community
Verification In A Global Design CommunityDVClub
 
IP Reuse Impact on Design Verification Management Across the Enterprise
IP Reuse Impact on Design Verification Management Across the EnterpriseIP Reuse Impact on Design Verification Management Across the Enterprise
IP Reuse Impact on Design Verification Management Across the EnterpriseDVClub
 
Efficiency Through Methodology
Efficiency Through MethodologyEfficiency Through Methodology
Efficiency Through MethodologyDVClub
 
SystemVerilog Assertions (SVA) in the Design/Verification Process
SystemVerilog Assertions (SVA) in the Design/Verification ProcessSystemVerilog Assertions (SVA) in the Design/Verification Process
SystemVerilog Assertions (SVA) in the Design/Verification ProcessDVClub
 
Intel Xeon Pre-Silicon Validation: Introduction and Challenges
Intel Xeon Pre-Silicon Validation: Introduction and ChallengesIntel Xeon Pre-Silicon Validation: Introduction and Challenges
Intel Xeon Pre-Silicon Validation: Introduction and ChallengesDVClub
 
Design Verification Using SystemC
Design Verification Using SystemCDesign Verification Using SystemC
Design Verification Using SystemCDVClub
 
Verification Automation Using IPXACT
Verification Automation Using IPXACTVerification Automation Using IPXACT
Verification Automation Using IPXACTDVClub
 
Pre-Si Verification for Post-Si Validation
Pre-Si Verification for Post-Si ValidationPre-Si Verification for Post-Si Validation
Pre-Si Verification for Post-Si ValidationDVClub
 
Low-Power Design and Verification
Low-Power Design and VerificationLow-Power Design and Verification
Low-Power Design and VerificationDVClub
 
Intel Atom Processor Pre-Silicon Verification Experience
Intel Atom Processor Pre-Silicon Verification ExperienceIntel Atom Processor Pre-Silicon Verification Experience
Intel Atom Processor Pre-Silicon Verification ExperienceDVClub
 

Viewers also liked (18)

Stop Writing Assertions! Efficient Verification Methodology
Stop Writing Assertions! Efficient Verification MethodologyStop Writing Assertions! Efficient Verification Methodology
Stop Writing Assertions! Efficient Verification Methodology
 
OpenSPARC T1 Processor
OpenSPARC T1 ProcessorOpenSPARC T1 Processor
OpenSPARC T1 Processor
 
Cisco Base Environment Overview
Cisco Base Environment OverviewCisco Base Environment Overview
Cisco Base Environment Overview
 
Verification of Graphics ASICs (Part II)
Verification of Graphics ASICs (Part II)Verification of Graphics ASICs (Part II)
Verification of Graphics ASICs (Part II)
 
Verification of Graphics ASICs (Part I)
Verification of Graphics ASICs (Part I)Verification of Graphics ASICs (Part I)
Verification of Graphics ASICs (Part I)
 
Trends in Mixed Signal Validation
Trends in Mixed Signal ValidationTrends in Mixed Signal Validation
Trends in Mixed Signal Validation
 
Validation and Design in a Small Team Environment
Validation and Design in a Small Team EnvironmentValidation and Design in a Small Team Environment
Validation and Design in a Small Team Environment
 
Validating Next Generation CPUs
Validating Next Generation CPUsValidating Next Generation CPUs
Validating Next Generation CPUs
 
Verification In A Global Design Community
Verification In A Global Design CommunityVerification In A Global Design Community
Verification In A Global Design Community
 
IP Reuse Impact on Design Verification Management Across the Enterprise
IP Reuse Impact on Design Verification Management Across the EnterpriseIP Reuse Impact on Design Verification Management Across the Enterprise
IP Reuse Impact on Design Verification Management Across the Enterprise
 
Efficiency Through Methodology
Efficiency Through MethodologyEfficiency Through Methodology
Efficiency Through Methodology
 
SystemVerilog Assertions (SVA) in the Design/Verification Process
SystemVerilog Assertions (SVA) in the Design/Verification ProcessSystemVerilog Assertions (SVA) in the Design/Verification Process
SystemVerilog Assertions (SVA) in the Design/Verification Process
 
Intel Xeon Pre-Silicon Validation: Introduction and Challenges
Intel Xeon Pre-Silicon Validation: Introduction and ChallengesIntel Xeon Pre-Silicon Validation: Introduction and Challenges
Intel Xeon Pre-Silicon Validation: Introduction and Challenges
 
Design Verification Using SystemC
Design Verification Using SystemCDesign Verification Using SystemC
Design Verification Using SystemC
 
Verification Automation Using IPXACT
Verification Automation Using IPXACTVerification Automation Using IPXACT
Verification Automation Using IPXACT
 
Pre-Si Verification for Post-Si Validation
Pre-Si Verification for Post-Si ValidationPre-Si Verification for Post-Si Validation
Pre-Si Verification for Post-Si Validation
 
Low-Power Design and Verification
Low-Power Design and VerificationLow-Power Design and Verification
Low-Power Design and Verification
 
Intel Atom Processor Pre-Silicon Verification Experience
Intel Atom Processor Pre-Silicon Verification ExperienceIntel Atom Processor Pre-Silicon Verification Experience
Intel Atom Processor Pre-Silicon Verification Experience
 

Similar to Using Assertions in AMS Verification

Testbench Linter: Automated Rule Checker Framework for Testbenches
Testbench Linter: Automated Rule Checker Framework for TestbenchesTestbench Linter: Automated Rule Checker Framework for Testbenches
Testbench Linter: Automated Rule Checker Framework for TestbenchesDVClub
 
Novel Approach for Accelerating Mixed Signal Verification
Novel Approach for Accelerating Mixed Signal VerificationNovel Approach for Accelerating Mixed Signal Verification
Novel Approach for Accelerating Mixed Signal VerificationDVClub
 
What's new in cdt 8.1
What's new in cdt 8.1What's new in cdt 8.1
What's new in cdt 8.1Mircea Givan
 
Emea freescale cup 2014 introduction
Emea freescale cup 2014 introductionEmea freescale cup 2014 introduction
Emea freescale cup 2014 introductionharragesi
 
EBV e Freescale: cosa possono fare per lo sviluppo delle vostre applicazioni ...
EBV e Freescale: cosa possono fare per lo sviluppo delle vostre applicazioni ...EBV e Freescale: cosa possono fare per lo sviluppo delle vostre applicazioni ...
EBV e Freescale: cosa possono fare per lo sviluppo delle vostre applicazioni ...QT-day
 
Hardware accelerated virtio networking for nfv linux con
Hardware accelerated virtio networking for nfv linux conHardware accelerated virtio networking for nfv linux con
Hardware accelerated virtio networking for nfv linux consprdd
 
One Version of the Truth, Driving S&OP from detailed planning tools, Freescale
One Version of the Truth, Driving S&OP from detailed planning tools, FreescaleOne Version of the Truth, Driving S&OP from detailed planning tools, Freescale
One Version of the Truth, Driving S&OP from detailed planning tools, FreescaleInnovation Enterprise
 
Adrian purcarea, country manager, freescale semiconductor
Adrian purcarea, country manager, freescale semiconductorAdrian purcarea, country manager, freescale semiconductor
Adrian purcarea, country manager, freescale semiconductorRevistaBiz
 
DPTF - Dataflow Programming Tools Framework
DPTF - Dataflow Programming Tools FrameworkDPTF - Dataflow Programming Tools Framework
DPTF - Dataflow Programming Tools Frameworkfliordache
 
Migrating from PDE to Tycho builds
Migrating from PDE to Tycho buildsMigrating from PDE to Tycho builds
Migrating from PDE to Tycho buildsTeodor Madan
 
l'internet des objets By Freescale
l'internet des objets By Freescalel'internet des objets By Freescale
l'internet des objets By Freescaleservicesmobiles.fr
 
Formal Verification Techniques
Formal Verification TechniquesFormal Verification Techniques
Formal Verification TechniquesDVClub
 
RTCA DO-254 Guidance - Accelerating DO-254 Verification
RTCA DO-254 Guidance - Accelerating DO-254 VerificationRTCA DO-254 Guidance - Accelerating DO-254 Verification
RTCA DO-254 Guidance - Accelerating DO-254 VerificationTarek Salah
 
Graal and Truffle: One VM to Rule Them All
Graal and Truffle: One VM to Rule Them AllGraal and Truffle: One VM to Rule Them All
Graal and Truffle: One VM to Rule Them AllThomas Wuerthinger
 
Supportland overview 91510
Supportland overview 91510Supportland overview 91510
Supportland overview 91510Emily Witt
 

Similar to Using Assertions in AMS Verification (20)

Testbench Linter: Automated Rule Checker Framework for Testbenches
Testbench Linter: Automated Rule Checker Framework for TestbenchesTestbench Linter: Automated Rule Checker Framework for Testbenches
Testbench Linter: Automated Rule Checker Framework for Testbenches
 
Novel Approach for Accelerating Mixed Signal Verification
Novel Approach for Accelerating Mixed Signal VerificationNovel Approach for Accelerating Mixed Signal Verification
Novel Approach for Accelerating Mixed Signal Verification
 
What's new in cdt 8.1
What's new in cdt 8.1What's new in cdt 8.1
What's new in cdt 8.1
 
Emea freescale cup 2014 introduction
Emea freescale cup 2014 introductionEmea freescale cup 2014 introduction
Emea freescale cup 2014 introduction
 
EBV e Freescale: cosa possono fare per lo sviluppo delle vostre applicazioni ...
EBV e Freescale: cosa possono fare per lo sviluppo delle vostre applicazioni ...EBV e Freescale: cosa possono fare per lo sviluppo delle vostre applicazioni ...
EBV e Freescale: cosa possono fare per lo sviluppo delle vostre applicazioni ...
 
Hardware accelerated virtio networking for nfv linux con
Hardware accelerated virtio networking for nfv linux conHardware accelerated virtio networking for nfv linux con
Hardware accelerated virtio networking for nfv linux con
 
One Version of the Truth, Driving S&OP from detailed planning tools, Freescale
One Version of the Truth, Driving S&OP from detailed planning tools, FreescaleOne Version of the Truth, Driving S&OP from detailed planning tools, Freescale
One Version of the Truth, Driving S&OP from detailed planning tools, Freescale
 
Adrian purcarea, country manager, freescale semiconductor
Adrian purcarea, country manager, freescale semiconductorAdrian purcarea, country manager, freescale semiconductor
Adrian purcarea, country manager, freescale semiconductor
 
DPTF - Dataflow Programming Tools Framework
DPTF - Dataflow Programming Tools FrameworkDPTF - Dataflow Programming Tools Framework
DPTF - Dataflow Programming Tools Framework
 
Migrating from PDE to Tycho builds
Migrating from PDE to Tycho buildsMigrating from PDE to Tycho builds
Migrating from PDE to Tycho builds
 
l'internet des objets By Freescale
l'internet des objets By Freescalel'internet des objets By Freescale
l'internet des objets By Freescale
 
Sensor fusion
Sensor fusionSensor fusion
Sensor fusion
 
Bangalore march07
Bangalore march07Bangalore march07
Bangalore march07
 
iWave Systems Techologies Pvt Ltd- Company Profile Presentation
iWave Systems Techologies Pvt Ltd- Company Profile PresentationiWave Systems Techologies Pvt Ltd- Company Profile Presentation
iWave Systems Techologies Pvt Ltd- Company Profile Presentation
 
Formal Verification Techniques
Formal Verification TechniquesFormal Verification Techniques
Formal Verification Techniques
 
Vlsi design services
Vlsi design servicesVlsi design services
Vlsi design services
 
Oracle super cluster m7
Oracle super cluster m7Oracle super cluster m7
Oracle super cluster m7
 
RTCA DO-254 Guidance - Accelerating DO-254 Verification
RTCA DO-254 Guidance - Accelerating DO-254 VerificationRTCA DO-254 Guidance - Accelerating DO-254 Verification
RTCA DO-254 Guidance - Accelerating DO-254 Verification
 
Graal and Truffle: One VM to Rule Them All
Graal and Truffle: One VM to Rule Them AllGraal and Truffle: One VM to Rule Them All
Graal and Truffle: One VM to Rule Them All
 
Supportland overview 91510
Supportland overview 91510Supportland overview 91510
Supportland overview 91510
 

More from DVClub

UVM Update: Register Package
UVM Update: Register PackageUVM Update: Register Package
UVM Update: Register PackageDVClub
 
Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...
Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...
Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...DVClub
 
Verification of Wireless SoCs: No Longer in the Dark Ages
Verification of Wireless SoCs: No Longer in the Dark AgesVerification of Wireless SoCs: No Longer in the Dark Ages
Verification of Wireless SoCs: No Longer in the Dark AgesDVClub
 
I Never Thought I Would Grow Up to be This Formal
I Never Thought I Would Grow Up to be This FormalI Never Thought I Would Grow Up to be This Formal
I Never Thought I Would Grow Up to be This FormalDVClub
 
OMAP Verification
OMAP VerificationOMAP Verification
OMAP VerificationDVClub
 
Roy aeroVerifying Power Domains in AeroFONE
Roy aeroVerifying Power Domains in AeroFONERoy aeroVerifying Power Domains in AeroFONE
Roy aeroVerifying Power Domains in AeroFONEDVClub
 
Advanced Methodologies Used for Top-Level Verification of Mixed Signal Products
Advanced Methodologies Used for Top-Level Verification of Mixed Signal ProductsAdvanced Methodologies Used for Top-Level Verification of Mixed Signal Products
Advanced Methodologies Used for Top-Level Verification of Mixed Signal ProductsDVClub
 
Verification Planning and Metrics to Ensure Efficient Program Execution
Verification Planning and Metrics to Ensure Efficient Program ExecutionVerification Planning and Metrics to Ensure Efficient Program Execution
Verification Planning and Metrics to Ensure Efficient Program ExecutionDVClub
 
Need of AMS Simulation in Mix IP Verification: Benefits and Challenges
Need of AMS Simulation in Mix IP Verification: Benefits and ChallengesNeed of AMS Simulation in Mix IP Verification: Benefits and Challenges
Need of AMS Simulation in Mix IP Verification: Benefits and ChallengesDVClub
 
Wireless Low Power and Verification Challenges
Wireless Low Power and Verification ChallengesWireless Low Power and Verification Challenges
Wireless Low Power and Verification ChallengesDVClub
 

More from DVClub (10)

UVM Update: Register Package
UVM Update: Register PackageUVM Update: Register Package
UVM Update: Register Package
 
Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...
Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...
Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...
 
Verification of Wireless SoCs: No Longer in the Dark Ages
Verification of Wireless SoCs: No Longer in the Dark AgesVerification of Wireless SoCs: No Longer in the Dark Ages
Verification of Wireless SoCs: No Longer in the Dark Ages
 
I Never Thought I Would Grow Up to be This Formal
I Never Thought I Would Grow Up to be This FormalI Never Thought I Would Grow Up to be This Formal
I Never Thought I Would Grow Up to be This Formal
 
OMAP Verification
OMAP VerificationOMAP Verification
OMAP Verification
 
Roy aeroVerifying Power Domains in AeroFONE
Roy aeroVerifying Power Domains in AeroFONERoy aeroVerifying Power Domains in AeroFONE
Roy aeroVerifying Power Domains in AeroFONE
 
Advanced Methodologies Used for Top-Level Verification of Mixed Signal Products
Advanced Methodologies Used for Top-Level Verification of Mixed Signal ProductsAdvanced Methodologies Used for Top-Level Verification of Mixed Signal Products
Advanced Methodologies Used for Top-Level Verification of Mixed Signal Products
 
Verification Planning and Metrics to Ensure Efficient Program Execution
Verification Planning and Metrics to Ensure Efficient Program ExecutionVerification Planning and Metrics to Ensure Efficient Program Execution
Verification Planning and Metrics to Ensure Efficient Program Execution
 
Need of AMS Simulation in Mix IP Verification: Benefits and Challenges
Need of AMS Simulation in Mix IP Verification: Benefits and ChallengesNeed of AMS Simulation in Mix IP Verification: Benefits and Challenges
Need of AMS Simulation in Mix IP Verification: Benefits and Challenges
 
Wireless Low Power and Verification Challenges
Wireless Low Power and Verification ChallengesWireless Low Power and Verification Challenges
Wireless Low Power and Verification Challenges
 

Recently uploaded

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 

Recently uploaded (20)

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 

Using Assertions in AMS Verification

  • 1. TM Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. Using Assertions in AMS Verification December 6, 2010 Scott Little (scott.little@freescale.com) AMS Verification Engineer
  • 2. Why assertions? ►I shouldn’t have to evangelize to this audience, but… ►Characteristics of assertions: • Compact • Mathematically precise semantics • Reusable across verification methodologies and Simulation/formal Module/SoC level TM Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 2 Module/SoC level • Built-in coverage collection and metrics ►Quickly identify failing condition ►Standard error reporting mechanism
  • 3. AMS verification ►Still a largely ad hoc process • Automated block-level regression suites rarely exist • General verification rigor we have come to expect with digital verification is often absent Immature verification plans Little or no random stimulus Coverage is not collected TM Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 3 ►Disconnect between system-level and block-level • Minimal sharing of checkers/monitors If automatic checkers/monitors exist at all • Testing focuses on local behaviors not interaction with the system
  • 4. Assertion-based AMS verification ►Assertions can: • Collect coverage • Be checked all levels of the hierarchy • Check interface assumptions ►Digital assertions have limitations • Real values cannot be referenced (according to the LRM) This works in practice for most simulators TM Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 4 This works in practice for most simulators • Time is aligned to sampling events (clocks) • Time is discrete and can’t be referenced directly • Continuous quantities (voltage, current) can’t be accessed directly ►What do we do? • Approximate with current languages • Enhance current modeling/assertion languages
  • 5. Our AMS verification methodology: A brief glimpse ►Analog blocks are designed and verified [designer] ►Abstract HDL model is created for the block [designer/modeler] • Written for use in SoC verification Performance is key Captures high-level functionality ►Abstract HDL model is verified vs. spec [modeler/verifier] • Assertions added and checked here TM Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 5 • Assertions added and checked here ►Abstract HDL model is verified vs. schematic [modeler/verifier] • Pin names and directions match • High-level behavior matches • Timing may differ ►Abstract HDL model is used in SoC-level verification [verifier]
  • 6. What do we check with assertions? ►Properties that are difficult to model but easy to check ►Interface assumptions • Illegal input combinations, sequences, or configurations Experimental feature is never enabled Analog inputs are isolated during digital test modes ►Power mode transitions • Check for conditions that result in floating nodes/leakage paths TM Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 6 • Check for conditions that result in floating nodes/leakage paths Block is never enabled without all power supplies present Level shifter is properly isolated when one supply goes down ►Timing relationships • Check “setup” times for analog blocks Circuit must be functional within the specified time after start-up Output is stable within the specified time after being enabled
  • 7. Where do we write AMS assertions? ►SystemVerilog • Powerful SystemVerilog Assertions (SVAs) are available • Can’t access continuous quantities • Tend to use carefully timed clocks and multiclocked properties ►Verilog-AMS • Can’t write actual assertions • Have full access to continuous quantities TM Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 7 • Have full access to continuous quantities • Use modeling code to approximate assertions ►SystemVerilog/Verilog-AMS • Digitize continuous signals using Verilog-AMS monitors • Pass digitized signals into the SystemVerilog module • Write assertions using the digitized signals, digital signals, and carefully timed clocks
  • 8. Verilog-AMS monitors example Property: To avoid floating nodes ensure that when vdd1 is powered down either isolate is high or vdd2 is powered down. For the purpose of determining if a supply is powered up/down we will ignore “droops” of less than 25 ns. Verilog-AMS checker Verilog-AMS monitors @cross(V(vdd1) – 5.0, +1) TM Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 8 //inertial delays squash short droops //Note: initialization is ignored assign #25 vdd1_down = !vdd1_gt_5; assign #25 vdd2_down = !vdd2_gt_5; always @(vdd1_down,isolate,vdd2_down) if(vdd1_down & !(isolate|vdd2_down)) $error(“ERROR: Floating node!”); @cross(V(vdd1) – 5.0, +1) vdd1_gt_5 <= 1’b1; @cross(V(vdd1) – 5.0, -1) vdd1_gt_5 <= 1’b0; @cross(V(vdd2) – 5.0, +1) vdd2_gt_5 <= 1’b1; @cross(V(vdd2) – 5.0, -1) vdd2_gt_5 <= 1’b0;
  • 9. Verilog-AMS monitors example //inertial delays squash short droops //Note: initialization is ignored assign #25 vdd1_down = !vdd1_gt_5; assign #25 vdd2_down = !vdd2_gt_5; always @(vdd1_down,isolate,vdd2_down) if(vdd1_down & !(isolate|vdd2_down)) $error(“ERROR: Floating node!”); @cross(V(vdd1) – 5.0, +1) vdd1_gt_5 <= 1’b1; @cross(V(vdd1) – 5.0, -1) vdd1_gt_5 <= 1’b0; @cross(V(vdd2) – 5.0, +1) vdd2_gt_5 <= 1’b1; @cross(V(vdd2) – 5.0, -1) vdd2_gt_5 <= 1’b0; vdd1 TM Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 9 vdd2 isolate vdd1_gt_5 vdd2_gt_5 vdd1_down
  • 10. SVAs & Verilog-AMS monitors example Property: To avoid floating nodes ensure that when vdd1 is powered down either isolate is high or vdd2 is powered down. SystemVerilog Assertion Verilog-AMS monitors @cross(V(vdd1) – 5.0, +1) TM Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 10 property noFloatingNodes; @(negedge vdd1_gt_5) 1'b1 ##0 @(posedge clk_1ns) (!vdd1_gt_5)[*25] |-> !vdd2_gt_5 | isolate throughout !vdd1_gt_5[*0:$] ; endproperty @cross(V(vdd1) – 5.0, +1) vdd1_gt_5 <= 1’b1; @cross(V(vdd1) – 5.0, -1) vdd1_gt_5 <= 1’b0; @cross(V(vdd2) – 5.0, +1) vdd2_gt_5 <= 1’b1; @cross(V(vdd2) – 5.0, -1) vdd2_gt_5 <= 1’b0;
  • 11. SVAs & Verilog-AMS monitors example property noFloatingNodes; @(negedge vdd1_gt_5) 1'b1 ##0 @(posedge clk_1ns) (!vdd1_gt_5)[*25] |-> !vdd2_gt_5 | isolate throughout !vdd1_gt_5[*0:$] ; endproperty @cross(V(vdd1) – 5.0, +1) vdd1_gt_5 <= 1’b1; @cross(V(vdd1) – 5.0, -1) vdd1_gt_5 <= 1’b0; @cross(V(vdd2) – 5.0, +1) vdd2_gt_5 <= 1’b1; @cross(V(vdd2) – 5.0, -1) vdd2_gt_5 <= 1’b0; vdd1 TM Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 11 vdd1 vdd2 isolate vdd1_gt_5 vdd2_gt_5 vdd1_down
  • 12. What bugs have we found? ►Incorrect enable sequencing • The system was enabling an analog block before it was stable. This early enable “crashes” the block. ►Floating analog blocks • Designer misunderstood the system configuration in a key low power mode. The isolation logic was incorrect and resulted in a large chunk of floating analog circuitry TM Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 12 ►Incorrect initialization • For correct behavior leaving reset, specific outputs must be pulled low/high. This system-level requirement was not understood or implemented by the block designer. ►Inconsistent specifications • The minimum operating voltage was specified in an incompatible way between key blocks.
  • 13. What is the future of AMS assertions? ►SVA is being added to Verilog-AMS ►Analog SVA (ASVA) effort is underway in Accellera and IEEE ►ASVA is an extension of SVA • Real values in boolean expressions • Realtime (i.e., continuous time) semantics • New realtime operators in sequences and properties ►Draws on Verilog-AMS TM Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 13 ►Draws on Verilog-AMS • Eventually, ASVA will be a part of a unified SystemVerilog-AMS language
  • 14. SVAs in Verilog-AMS modules example Property: To avoid floating nodes ensure that when vdd1 is powered down either isolate is high or vdd2 is powered down. SystemVerilog Assertion in a Verilog-AMS module TM Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 14 property noFloatingNodes; @(cross(V(vdd1) – 5.0, -1) 1'b1 ##0 @(posedge clk_1ns) (V(vdd1) < 5.0)[*25] |-> V(vdd2)<5.0|isolate throughout (V(vdd1)<5.0)[*0:$] ; endproperty Verilog-AMS monitor @cross(V(vdd2) – 5.0, 0) ;
  • 15. SVAs in Verilog-AMS modules example property noFloatingNodes; @(cross(V(vdd1) – 5.0, -1) 1'b1 ##0 @(posedge clk_1ns) (V(vdd1) < 5.0)[*25] |-> V(vdd2)<5.0|isolate throughout (V(vdd1)<5.0)[*0:$] ; endproperty @cross(V(vdd2) – 5.0, 0) ; vdd1 TM Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 15 vdd1 vdd2 isolate vdd1_gt_5 vdd2_gt_5 vdd1_down
  • 16. ASVA extension requirements ►ASVA committee has voted on extension requirements • ASVA should include all existing SVA • The meaning of existing constructs should not change • New constructs should provide realtime capabilities useful for AMS verification ►Existing SVA has a discrete semantic framework • Based on linear temporal logic and regular expressions TM Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 16 • Based on linear temporal logic and regular expressions ►Problem: Find a “good” way to extend SVA to realtime • Allow free intermingling of old and new operators, not just a union of old and new forms • Non-trivial
  • 17. Extending SVA to realtime ►Some extensions are straightforward • Logical connectives (and, or, not) have the same meaning • Non-temporal implications (|->, if-else) have the same meaning • Clocked booleans (ignoring sampling questions) ►Some extensions have been studied in external research • Realtime linear temporal logic operators p until[0:1.5m] q requires q to occur within 1.5 ms of the start of the TM Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 17 p until[0:1.5m] q requires q to occur within 1.5 ms of the start of the property ►What about realtime sequences?
  • 18. Realtime sequences ►We invented a realtime semantic framework for sequences based on continuous intervals • Proved equivalence between the new realtime semantics and the existing SVA semantics for the SVA sequence forms ►Introduced three new primitive realtime sequence forms: • b: realtime (i.e., unclocked) boolean • r without @(c): sequence without an event TM Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 18 • r without @(c): sequence without an event • b[*a1:a2]: boolean “smear”, i.e., boolean holds continuously for a specified time range ►Introduced several new derived realtime sequence forms: • r #[a:b] s: realtime concatenation • r #0 s: realtime fusion • b[~>1]: realtime goto
  • 19. Realtime sequence examples ►a is true and b is false continuously for 10.5 ns • (a && !b)[*10.5n] ►a is true and 9.7 ms later b is true • a #9.7m b ►From the beginning of the interval, advance to the first time where a is high, then find b and c high 1.6 ns later, and also ensure that b subsequently stays high continuously for 5.1 ms TM Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 19 subsequently stays high continuously for 5.1 ms • a[->1] #1.6n (b && c) #0 b[*5.1m]
  • 20. ASVA example Property: From the time we see a valid bias voltage until the circuit gets enabled must be >= 5 µs. ASVA TM Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 20 property noFloatingNodes; @(cross(V(vdd1) – 5.0, -1) 1'b1 #0 (V(vdd1) < 5.0)[*25.0n] |-> V(vdd2) < 5.0 | isolate throughout (V(vdd1) < 5.0)[*0.0:$] ; endproperty
  • 21. ASVA example property noFloatingNodes; @(cross(V(vdd1) – 5.0, -1) 1'b1 #0 (V(vdd1) < 5.0)[*25.0n] |-> V(vdd2) < 5.0 | isolate throughout (V(vdd1) < 5.0)[*0.0:$] ; endproperty vdd1 TM Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 21 vdd1 vdd2 isolate vdd1_gt_5 vdd2_gt_5 vdd1_down
  • 22. Conclusions ►AMS assertions are a powerful tool in the verification toolbox • They are very useful when checking for illegal interface conditions, power down conditions, and timing sequences • They are in the process of maturing • Even while maturing they are very usable • They help find real bugs TM Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 22 ►More information on the standards effort: • http://www.vhdl.org/twiki/bin/view.cgi/VerilogAMS/AmsAssertions
  • 23. Acknowlegements ►I would like to thank the following people for their collaboration: • John Havlicek • Himyanshu Anand • Chris Stoll • Ben Ehlers • Neil Spake TM Freescale, the Freescale logo, AltiVec, C-5, CodeTEST, CodeWarrior, ColdFire, C-Ware, mobileGT, PowerQUICC, StarCore, and Symphony are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. BeeKit, BeeStack, CoreNet, the Energy Efficient Solutions logo, Flexis, MXC, Platform in a Package, Processor Expert, QorIQ, QUICC Engine, SMARTMOS, TurboLink and VortiQa are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. © 2010 Freescale Semiconductor, Inc. 23
  • 24. TM