Perl is an incredibly versatile scripting/programming
language. It can be used for scripting design compilation and builds,
parsing report files for errors or warnings etc. This improves build
speed and reliability as you can be confident that no errors have been
missed in a build or place and route report. It can also be used to
repeat repeditive tasks, an example is the testbench generator.
It can also be used to allow quick debug
programs to be written for rapid testing of target hardware. An example
is a quick script which was used to keep cycling an SDH Tu pointer control
module through it's entire range of pointer values. This was driven
via the serial port, alternately the target could have been driven by
a telnet session.
Perl can also be used with the Tk extension
to create quick GUI applications for manual debug where hardware is
ready for test before any software is available to support it.
The Perl/Tk GUI shown below was used to
replace Windows Hyperterminal for debug of sections of an SDH Tu design
in an embedded target. Register access via Hyperterminal required 22
key strokes which was painfully slow, especially if a sequence of register
accesses was needed to initiate an action.