how to handle the dead code and unreachable code in design what is the difference between them
1)do we need to write more number of test cases to cover the unreachable code
2) filter out unreachable code
3) delete the unreachable code
In reply to divyadm:
how to handle the dead code and unreachable code in design what is the difference between them
- I have the impression that dead code represents a piece of logic that is not connected to anything. Typically, synthesis tools identify and remove dead code.
- Unreachable code is code that cannot be reached because logical conditions are such that it cannot be reached. You may have experienced this with FSM states, particularly if contradictory statements prevent the entry into certain states. A simple example maybe a set of inputs that are hardwired of zero. In that case, one can consider this unreachable code as dead code.
1)do we need to write more number of test cases to cover the unreachable code
- filter out unreachable code
- delete the unreachable code
Again, tools remove such code.
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