Essential Perl is a 3-day course teaching the essentials of Perl and its application in the field of PLD and ASIC design.
Perl is a popular and widely-used cross-platform programming language. In particular, its powerful text processing capability can be used to automate many otherwise error-prone, repetitive and time-consuming tasks in the ASIC and PLD design process.
The syllabus covers the essential subset of the Perl5 scripting language and is packed with design related exercises and examples including: patching netlists, filtering reports, generating test vectors, and running tools.
Delegates can use their choice of PC or UNIX platforms during the workshops. The workshops are based around carefully designed exercises, to reinforce and challenge the extent of learning, and comprise approximately 50% of class time.
No previous knowledge of Perl or software language experience is required, although the latter would be advantageous. Delegates are expected to be computer literate and to have an understanding of the digital hardware design process.
Doulos Course materials are renowned for being the most comprehensive and user friendly available. Their style, content and coverage is unique in the HDL training world and has made them sought after resources in their own right. Course fees include:
Origins of Perl • Exploring the benefits of Perl for design engineers • Internet resources for problem solving and sharing solutions • Perl book recommendations • Plain Old Documentation (POD) the language reference • Perl applications in design
Running programs in UNIX or Windows • Using command line options • Understanding scalar variables • Numbers & strings • Interpolation explained • Arrays (lists) • Hashes (associative arrays) • Exploring scalar and list context
Conditional statements: if, unless • Alternative case structures • Looping statements: until, while, for, foreach • Loop control using: next, last, redo • Conditional modifiers: if, unless • Loop modifiers – while, until • Using 'and' and 'or' for better readability
Opening text files for reading, writing or appending • Using pipes to other processes • Testing file properties with file test operators • formatting output using print and write • frequently used special variables
Matching with modifiers • Substituting with modifiers • Inventing character classes • Quantifiers • Anchoring matches on character boundaries • Reusing matched groups with back references • Grouping and alternatives in regular expressions • Extended regular expressions • Guidance for complex regular expressions
Writing subroutines in Perl • Controlling variable scoping using my, our and local • Using references to variables and subroutines • Packaging scripts for reuse with modules
Using Perl debugger • Syntax checking • Generating extra warnings • Writing better code using pragmas
Modifying automatically generated netlists, to ensure different tools work together smoothly • Filtering long report files e.g. those generated by place & route tools • Creating, translating and modifying files containing test vectors • Autonomously running design tools in sequence, checking results then warning, re-running, stopping or continuing accordingly.
Understanding packages • Creating and using modules • Setting Perl's module search path • Installing CPAN modules • Object-oriented Perl • Creating a simple class
Complete an enquiry form and a Doulos representative will get back to you.
Enquiry FormPrice on request