In reply to dave_59:
The Followed-by operators, #-#, #=#, allow ths concatenating a sequence and a property. It is useful in many cases. From my book SVA Handbook 4th Edition
The following represents an application example of the followed-by operator.
A processor needs to initiate the data transfer from an external bus onto its internal memory via DMA. The processor starts two consecutive actions: 1) a DMA request followed by a DMA acknowledge to get the memory transfer setup ready, and then 2) an optional external bus request followed by a bus acknowledge to start the data transfers over the bus interface. Thus, following the DMA acknowledge they may or may not be a bus request. If there is no bus request, then this might be because the processor is handling another higher priority process, and an assertion of this activity is vacuous.
property p_BusAccess (bus_req, bus_ack);
(bus_req |-> ##[1:7] bus_ack);
endproperty : p_BusAccess
ap_DMA_BusAccess : assert property( @ (posedge clk)
$rose(dma_command) |=> // property antecedent and implication operator
(dma_req ##[1:3] dma_ack) // followed-by antecedent
#=# p_BusAccess(req, ack)); // followed-by consequent
Ben Cohen
http://www.systemverilog.us/ ben@systemverilog.us
For training, consulting, services: contact Home - My cvcblr
- SVA Handbook 4th Edition, 2016 ISBN 978-1518681448
- A Pragmatic Approach to VMM Adoption 2006 ISBN 0-9705394-9-5
- Using PSL/SUGAR for Formal and Dynamic Verification 2nd Edition, 2004, ISBN 0-9705394-6-0
- Real Chip Design and Verification Using Verilog and VHDL, 2002 isbn 978-1539769712
- Component Design by Example ", 2001 ISBN 0-9705394-0-1
- VHDL Coding Styles and Methodologies, 2nd Edition, 1999 ISBN 0-7923-8474-1
- VHDL Answers to Frequently Asked Questions, 2nd Edition ISBN 0-7923-8115
- SVA Alternative for Complex Assertions
Verification Horizons - March 2018 Issue | Verification Academy - SVA: Package for dynamic and range delays and repeats | Verification Academy
- SVA in a UVM Class-based Environment
SVA in a UVM Class-based Environment | Verification Horizons | Verification Academy