Perl is a high-level programming language. Larry Wall invented Perl
and thousands have contributed their time making it a very powerful
tool. Perl borrows heavily from the C programming language and
copies the really useful bits from sed, awk, Unix shell, and many
other tools and languages.
Perl Productivity
Perl's process, file, and text manipulation facilities make it
particularly well-suited for tasks involving automatic code
generation, report filtering, netlist patching, generating test
vectors and controlling tools. Perl is FREE so maybe you should use
it too.
Followings offer advice and examples for improving design
productivity through with Perl.
Automatic Code Generation
Perl has been used for translating between related languages: VHDL
to Verilog, Xilinx Netlist Files to VHDL, VHDL to SystemC, etc.
Source files with low originality are prime candidates for
automatic generation.VHDL engineers regularly write testbenches.
We've written an online demonstration to show you how Perl can do
it for you. Perl is also useful for Coding Style conformance
checking and enforcement.
Report Filtering
EDA tools are notorious for creating verbose report files. Many
megabytes of text may contain little interesting information. Perl
is well matched to extracting key information quickly.
Netlist Patching
EDA tools within design flows never fit together perfectly. Often,
really useful features are unsupported. Netlists generated from one
tool need modifying before the next tool will read them. Perl is
well matched to intelligent search and replace jobs.
Generating Test Vectors
Perl can apply rules for generating sophisticated test vector
patterns: ATM packets, MPEG streams, QAM samples with added noise,
etc.
Controlling Tools
Perl is able to call any tool installed on its host computer. Perl
can even run Telnet and FTP sessions to control remote computers.
Any task involving more than one tool can be automated using a Perl
script.A Perl script might run a tool, filter the textual output
then decide whether to: modify constraints and try again, move on
to the next tool in the flow or abort and send email notification
to a project leader.
Where To Get Perl
Many operating systems support Perl. Most importantly ports exist
for, Linux, Windows and versions of Unix. The standard Perl release
is available in source code only. However, hardware engineers don't
have time to compile their own and binary distributions are freely
available. You can find ports for many operating systems on CPAN
(Comprehensive Perl Archive Network. Currently, Doulos use the free
ActivePerl distributions from ActiveState for Solaris and Windows.
Regular Expressions
Almost every Perl script uses regular expressions. We've written a
Perl Regular Expression Viewer tool to help you write them faster.
Download your free copy now.
Essential Perl training
To become a skilled and efficient user of Perl for hardware design,
you need to attend Essential Perl, an intensive 3 day course
teaching the application of Perl specifically to ASIC, FPGA and PLD
design.
rickyice
welcome to discussing!