Esperan Logo
Esperan is internationally recognised as a high quality provider of training in VHDL, SystemVerilog, SystemC, PSL, SVA, OVM, TLM and for courses covering design, verification, and PCB methodologies.
Esperan Schedule Menu
Esperan Course Menu
Esperan Contact Menus
Esperan UK contact information Phone +44 1344 865436
Fax +44 1344 865347
Email:
info@esperan.com

Contacts for other regions
Perl for EDA Engineering

Duration | Requirements | Agenda

Scheduled Classes...
France Grenoble 13-Mar-2012 3 days Register Interest
France Paris 05-Jun-2012 3 days Register Interest
Germany Munich 19-Mar-2012 3 days Register Interest
Germany Munich 30-May-2012 3 days Register Interest
Israel Tel Aviv 11-Jun-2012 3 days Register Interest

Contact Esperan for more information or to request an on-site class.


Testimonials

"An excellent way to get started programming in Perl"


Introduction

Perl is a general purpose scripting language with outstanding features for text, file and process manipulation. In the EDA world, these features make Perl extremely useful for applications such as:-

  • Extracting specific data from a text file, e.g. tool reports, logs, code or netlists
  • Translating or tweaking code formats between tools
  • Generating code, e.g. testbenches, stimulus vectors, code wrappers or shells
  • Executing multi-tool operations in a design flow

 


Overview

This course provides a detailed introduction to the EDA applications of Perl, covering all of its core features, showing its application in analyzing large quantities of textual data and offering expert tips on how to construct effective scripts. Conventional Perl classes tend to concentrate on web programming applications. This class has been specifically written to emphasize the Perl features which are of more interest to EDA engineers and CAD departments.

 

Note: All attendees receive a complimentary Perl Reference Guide.


Objectives

In this course you will:

  • Gain an in-depth understanding of the essential concepts of Perl.
  • Understand the Perl syntax
  • Learn about the different variable types in Perl - scalars, arrays and hashes
  • Understand Flow Control
  • Understand the idea of context
  • Create complex data structures by means of references
  • Read and Write - explore Perl's IO system
  • Create reusable code by means of subroutines and modules
  • Master Regular Expressions in Perl
  • Use the Perl Debugger to trace problems

 


Duration

3 days. We can also offer standard or customized versions of this course onsite or at the location of your choice.


Requirements

Some programming experience is very helpful as well as some basic Unix knowledge.
No prior knowledge of Perl is required. If you have queries on these prerequisites, please contact your Esperan training team.


Description

This course covers:

 

 Perl Fundamentals

Describing the basic syntax and concepts of Perl. Constructing robust, reusable Perl modules using best-practice guidelines for coding, documentation and testing.

 

Data Processing

Understanding how to create, read, update and delete common Perl data structures (arrays, hashes, arrays-of-arrays, arrays-of-hashes etc). Using Regular Expression syntax to extract and edit specific data from such structures and from text files. Manipulating files and directories in Perl.

 


Agenda


Day 1

  • Perl Overview
    • Strengths of Perl
    • Compiler vs. Interpreter
    • Perl 6
  • Getting Help
    • perldoc
  • Perl Fundamentals
    • Syntax,
    • Data types
    • Variables
  • References
  • Scalar Variables
    • Arrays and Lists
    • Creating, reading, updating and deleting
  • Functions
  • Operators

 

Day 2

  • Hashes
    • Creating, reading, updating and deleting
    • Functions
  • Pragmas and Modules
  • Control
    • Conditional execution – if/unless
    • Loops – while/foreach
    • Statement modifiers
  • Subroutines
    • Parameters
    • Local variables
    • Lexical vs. dynamic scope
    • Return Values
    • Package/Module Overview
  • File IO
    • File open and close
    • Read, write and append
    • Piping to/from programs
    • stdout, stderr, stdin, argv

 

Day 3

  • Regular Expressions (REs)
    • Searching and substitution
    • Meta-characters
    • Replication and ranges
    • Modifiers and comments
    • RE functions
  • Modules
    • Using core modules
    • CPAN and module management
    • Manual module installation
    • Creating modules
    • Export, Begin and End
  • Debugger
    • Control
    • Source viewing
    • Inspecting data
  • Interacting with the filesystem
    • Files and directories
    • File tests
    • Globbing
  • Tips trick and hacks
     

Lab Exercises

The labs sessions include:

  • Text search, substitution and processing
  • Creating and manipulating data structures
  • Use of subroutines
  • Module management and installation
  • Recursive programming