oascript & oadebug Kevin Nesmith Lead Engineer, Si2 June 7, 2013
|
|
- Benjamin Pearson
- 6 years ago
- Views:
Transcription
1 oascript & oadebug Kevin Nesmith Lead Engineer, Si2 June 7,
2 oascript News Chip Designer Centric Python API Tcl API Ruby API Perl API Language-Specific Bindings Type Mapping Type Mapping Type Mapping Type Mapping Common Wrapper Architecture Interface Common EDA Programmer SWIG Framework Centric OpenAccess API C++ Programming Interface Version 2.0 available under the new ESG approved license Allows for custom C++ extensions. 64 bit binaries for each language. Windows version in development under the Silicon Photonics TAB 10 OA labs ported from C++ to support all 4 scripting languages Provides training to design engineers who operate at the scripting interface 2
3 oascript Support oascript is currently supported on OpenAccess Streams oa22.04 gcc bit oa22.41 gcc bit oa22.43 gcc bit Linux RHEL 4.8 RHEL 5 SLES 10 SLES 11 Perl Python Ruby Tcl
4 oaspython Example This simple scripting language demo will show how to use oaspython to open a library and create a simple design with two nets. 4
5 oaspython Example Shell environment variables need by oascript perl: linux> export ruby: linux> export tcl: linux> export python: linux> export =/opt/oascript/perl5 =/opt/oascript/ruby =/opt/oascript/tcl =/opt/oascript/python2 LD_LIBRARY_PATH specifies the path to the OA libraries: linux> export =/opt/oa22.43p004/lib/ linux_rhel50_gxx44_64/opt 5
6 oaspython Example Unsupported Platforms Often times the need arises to run OA/oaScript on an unsupported platform such as Fedora 17. Fedora 17: The user will still need to specify the path to the OA libraries: linux> export =/opt/oa22.43p004/lib/ linux_rhel50_gcc44x_64/opt Important The user will need to tell OA which platform to substitute: linux> export =linux_rhel50_gcc44x 6
7 oaspython Example Using the python interpreter to create a library: linux> export PYTHONPATH=/opt/oaScript/python2 linux> export LD_LIBRARY_PATH=/opt/oa22.43p004/ /opt linux> export OA_UNSUPPORTED_PLAT=linux_rhel50_gcc44x linux> python Python (default, Jul , 10:05:38) >>> import oa >>> oa.oalib.create("designlib", "./designlibondisk") <Swig Object of type 'OpenAccess_4::oaLib *' at 0x7feace8141f0> >>> quit() linux> ls -ld designlibondisk drwxrwxr-x. 2 me user 4096 May 28 12:12 designlibondisk 7
8 oaspython Example Create a lib.defs (library definition) file: The lib.defs file associates logical library names used by tools with physical locations on disks. lib.defs DEFINE designlib./designlibondisk The lib.defs file is a text file. It can be created and managed by OpenAccess functions, OR it can be created and edited in your favorite text editor. For our simple example, it is made in the editor. 8
9 oaspython Example The DEFINE statement specifies the mapping between a logical library name and its physical location on disk. lib.defs DEFINE The library s logical name is designlib. The library s physical location is./designlibondisk. 9
10 oaspython Example The OpenAccess API looks for a lib.defs file in 1. The current directory 2. The home directory 3. <oainstalldir>/data/libraries directory lib.defs DEFINE designlib./designlibondisk 10
11 oaspython Example Creating an example design script: #!/usr/bin/env python makedesign.py Execute as a python script. 11
12 oaspython Example Creating an example design script: #!/usr/bin/env python import sys import oa makedesign.py Import the system uality and oa modules. 12
13 oaspython Example Creating an example design script: #!/usr/bin/env python import sys import oa oa.oadesigninit() makedesign.py import oa calls oadesigninit() automaacally, so this isn t needed 13
14 oaspython Example Creating an example design script: #!/usr/bin/env python import sys import oa oa.oalibdeflist.openlibs() makedesign.py Read the lib.defs file, which maps logical names to physical locaaons. 14
15 oaspython Example Creating an example design script: #!/usr/bin/env python import sys import oa oa.oalibdeflist.openlibs() vt=oa.oaviewtype.get( netlist ) makedesign.py viewtype must be specified to create a design. 15
16 oaspython Example Creating an example design script: import sys import oa oa.oalibdeflist.openlibs() vt=oa.oaviewtype.get( netlist ) des=oa.oadesign.open( designlib, mycell, myview, vt, w ) makedesign.py Open a design with logical, cell, and view names, viewtype, and write mode. 16
17 oaspython Example Creating an example design script: oa.oalibdeflist.openlibs() vt=oa.oaviewtype.get( netlist ) des=oa.oadesign.open( designlib, mycell, myview, vt, w ) block=oa.oablock.create(des) makedesign.py The block holds a physical descripaon of the design. 17
18 oaspython Example Creating an example design script: des=oa.oadesign.open( designlib, mycell, myview, vt, w ) block=oa.oablock.create(des) oa.oascalarnet.create(block, net1 ) makedesign.py This creates the 1st net, net1. 18
19 oaspython Example Creating an example design script: makedesign.py block=oa.oablock.create(des) This creates the 2nd net, net2. oa.oascalarnet.create(block, net1 ) oa.oascalarnet.create(block, net2 ) 19
20 oaspython Example Creating an example design script: block=oa.oablock.create(des) oa.oascalarnet.create(block, net1 ) oa.oascalarnet.create(block, net2 ) for net in (block.getnets()): print net in block: %s % (net.getname()) makedesign.py This iterates over the collecaon of nets in the block. 20
21 oaspython Example Creating an example design script: block=oa.oablock.create(des) oa.oascalarnet.create(block, net1 ) oa.oascalarnet.create(block, net2 ) for net in (block.getnets()): print net in block: %s % (net.getname()) makedesign.py This prints each net s name in the collecaon. 21
22 oaspython Example Creating an example design script: oa.oascalarnet.create(block, net1 ) oa.oascalarnet.create(block, net2 ) for net in (block.getnets()): print net in block: %s % (net.getname()) des.save() makedesign.py This saves the design to the disk. 22
23 oaspython Example Creating an example design script: makedesign.py oa.oascalarnet.create(block, net2 ) This closes the design. for net in (block.getnets()): print net in block: %s % (net.getname()) des.save() des.close() 23
24 oaspython Example Running the makedesign.py script: Don t forget your environment variables linux> export PYTHONPATH=/opt/oaScript/python2 linux> export LD_LIBRARY_PATH=/opt/oa22.43p004/ /opt linux> export OA_UNSUPPORTED_PLAT=linux_rhel50_gcc44x Make sure you have the script, library, and lib.defs file in the current directory. linux> ls lib.defs makedesign.py designlibondisk You may need to make your file executable linux> chmod +x makedesign.py 24
25 oaspython Example Running the makedesign.py script: Execute the script linux>./makedesign.py net in block: net1 net in block: net2 NoAce: this is our expected output. 25
26 #include <iostream> #include "oadesigndb.h int main(int argc, char *argv[]) { oa::oadesigninit(); oa::oalibdeflist::openlibs(); oa::oanativens nns; C++ Dump Nets oa::oascalarname slib(nns, argv[1]); oa::oascalarname scell(nns, argv[2]); oa::oascalarname sview(nns, argv[3]); } oa::oadesign *design = oa::oadesign::open(slib, scell, sview, 'r'); oa::oablock *block = design->gettopblock(); oa::oaiter<oanet> iter(block->getnets()); while (oa::oanet *net = iter.getnext()) { oa::oastring str; net->getname(nns,str); std::cout << str << std::endl; } 26
27 Python Dump Nets import sys import oa oa.oalibdeflist.openlibs() design = oa.oadesign.open(sys.argv[1], sys.argv[2], sys.argv[3], r ) block = design.gettopblock() for net in block.getnets(): print net.getname() 27
28 oadebug Example Let s look at our design library with oadebug: Executing oadebug from the same directory will allow it to read the same lib.defs file linux> <path_to_oadebug>/si2oadebug By default, this will start a Firefox browser and show you 28
29 oadebug Example NoAce: this is our library. 29
30 oadebug Example NoAce all the references to where you are in the design. 30
31 oadebug Example To save on memory, designs are not shown unal you BIND. 31
32 oadebug Example Once you BIND, a new browser window opens containing the design. 32
33 oadebug Example NoAce the oablock within the oadesign. Under oablock, you will find your nets. 33
34 oadebug Example Under nets you can see that you have a total count of 2. 34
35 oadebug Example Here you have your net1 and net2. 35
36 oadebug Example Under each net, you will find all of it s properaes and members. 36
37 oadebug Example NoAce that OpenAccess specific classes in blue are right mouse click hyperlinks directed to the OpenAccess Docs. 37
38 Si2 oadebugging Suite Check out Si2 s other debug programs. si2oadebug si2oadiff diff any 2 designs si2oaforensics Checks for GLIBCXX compatibility Release Build Name Internal Build Name Libraries Build Info Data Model Rev API Minor Rev Platform Name Wafer Support Data Compression Support Scratch Design Support 38
39 OpenAccess Recent Progress Recent Releases of OpenAccess oa22.41 Stream p031 Released May 14, 2013 p029 Released January 28, 2013 oa22.43 Stream p014 Released April 24, 2013 p010 Released February 20,
40 OpenAccess News The new ESG v2.0 License has been approved! Sign Once / Use Many model. String/Name Table Capacity Increase Due in END of LIFE coming January 1, 2014: oa22.04 Stream oa22.42 Stream 40
41 oascript 2.0 NOW AVAILABLE TO ALL SI2 MEMBERS! UNDER THE ESG LICENSE v
42 Si2 oadebugging Suite ALWAYS AVAILABLE TO EVERYONE! FREE, AS IN GRATIS! UNDER THE APACHE 2.0 LICENSE. 42
43 For More Information oascript Users Wiki README notes for the oascript releases OpenAccess Documentation and Training Si2 OpenAccess Online Course Si2 OpenAccess Tutorial and Labs OpenAccess Online Docs 43
44 For More Information Si2 oadebugging Suite OpenAccess Documentation and Training Si2 OpenAccess Online Course Si2 OpenAccess Tutorial and Labs OpenAccess Online Docs 44
45 THANK YOU! 45
oascript HowTo Kevin Nesmith Lead Engineer, Si2 June 10, 2013
oascript HowTo Kevin Nesmith Lead Engineer, Si2 June 10, 2013 1 oascript News Chip Designer Centric Python API Tcl API Ruby API Perl API Language-Specific Bindings Type Mapping Type Mapping Type Mapping
More informationAn Introduction to OpenAccess Scripting
An Introduction to OpenAccess Scripting James D. Masters Intel Corp Design Automation Conference June 6, 2011 1 What is it? Standalone direct interface to OpenAccess (OA) No dependencies beyond OA and
More informationA Comparison of OpenAccess Scripting Languages
A Comparison of OpenAccess Scripting Languages James D. Masters, Intel Corp OpenAccess Conference October 20, 2010 1 Common API to OpenAccess Perl API Python API Ruby API Tcl API Language-Specific Bindings
More informationItron Riva Dev Software Development Getting Started Guide
Itron Riva Dev Software Development Getting Started Guide Table of Contents Introduction... 2 Busybox Command-line [Edge and Mini]... 2 BASH Scripts [Edge and Mini]... 3 C Programs [Edge and Mini]... 5
More informationBut before understanding the Selenium WebDriver concept, we need to know about the Selenium first.
As per the today s scenario, companies not only desire to test software adequately, but they also want to get the work done as quickly and thoroughly as possible. To accomplish this goal, organizations
More informationIntroduction to Supercomputing
Introduction to Supercomputing TMA4280 Introduction to UNIX environment and tools 0.1 Getting started with the environment and the bash shell interpreter Desktop computers are usually operated from a graphical
More informationTable of Contents EVALUATION COPY
Table of Contents Introduction... 1-2 A Brief History of Python... 1-3 Python Versions... 1-4 Installing Python... 1-5 Environment Variables... 1-6 Executing Python from the Command Line... 1-7 IDLE...
More informationCS354 gdb Tutorial Written by Chris Feilbach
CS354 gdb Tutorial Written by Chris Feilbach Purpose This tutorial aims to show you the basics of using gdb to debug C programs. gdb is the GNU debugger, and is provided on systems that
More informationAssignment 1: Communicating with Programs
Assignment 1: Communicating with Programs EC602 Design by Software Fall 2018 Contents 1 Introduction 2 1.1 Assignment Goals........................... 2 1.2 Group Size.............................. 2 1.3
More informationPROGRAMMING IN C++ CVIČENÍ
PROGRAMMING IN C++ CVIČENÍ INFORMACE Michal Brabec http://www.ksi.mff.cuni.cz/ http://www.ksi.mff.cuni.cz/~brabec/ brabec@ksi.mff.cuni.cz gmichal.brabec@gmail.com REQUIREMENTS FOR COURSE CREDIT Basic requirements
More informationEssential Unix and Linux! Perl for Bioinformatics, ! F. Pineda
Essential Unix and Linux! Perl for Bioinformatics, 140.636! F. Pineda Generic computer architecture Memory Storage Fig. 1.2 From Designing Embedded Hardware, 2 nd Ed. by John Catsoulis OS concepts Shell
More informationMar-05 TETware training course 7-48
7.5 - The Ruby API The Ruby API provides a binding to the TET C API All the functions provided by the API are in a single Ruby module Rbtet This module must be imported at the start of the test code require
More informationExercise 1: Basic Tools
Exercise 1: Basic Tools This exercise is created so everybody can learn the basic tools we will use during this course. It is really more like a tutorial than an exercise and, you are not required to submit
More informationMcGill University School of Computer Science Sable Research Group. *J Installation. Bruno Dufour. July 5, w w w. s a b l e. m c g i l l.
McGill University School of Computer Science Sable Research Group *J Installation Bruno Dufour July 5, 2004 w w w. s a b l e. m c g i l l. c a *J is a toolkit which allows to dynamically create event traces
More informationSaleae Device SDK Starting a Device SDK Project on Windows Starting a Device SDK Project on Linux... 7
Contents Starting a Device SDK Project on Windows... 2 Starting a Device SDK Project on Linux... 7 Debugging your Project with GDB... 9 Starting a Device SDK Project on Mac... 11 Build Script / Command
More informationCOMP s1 Lecture 1
COMP1511 18s1 Lecture 1 1 Numbers In, Numbers Out Andrew Bennett more printf variables scanf 2 Before we begin introduce yourself to the person sitting next to you why did
More informationRed Hat Developer Tools
Red Hat Developer Tools 2018.4 Using Clang and LLVM Toolset Installing and Using Clang and LLVM Toolset Last Updated: 2018-11-29 Red Hat Developer Tools 2018.4 Using Clang and LLVM Toolset Installing
More informationPutting Curves in an Orthogonal World
Putting Curves in an Orthogonal World Extending the EDA Flow to Support Integrated Photonics Masahiro Shiina October 2018 Traditional IC Design Designers & tool developers have lived in a orthogonal world
More informationUsing Subversion for Source Code Control
Using Subversion for Source Code Control Derrick Kearney HUBzero Platform for Scientific Collaboration Purdue University Original slides by Michael McLennan This work licensed under Creative Commons See
More informationProject 1: Convex hulls and line segment intersection
MCS 481 / David Dumas / Spring 2014 Project 1: Convex hulls and line segment intersection Due at 10am on Monday, February 10 0. Prerequisites For this project it is expected that you already have CGAL
More informationLab: Supplying Inputs to Programs
Steven Zeil May 25, 2013 Contents 1 Running the Program 2 2 Supplying Standard Input 4 3 Command Line Parameters 4 1 In this lab, we will look at some of the different ways that basic I/O information can
More informationMEIN 50010: Python Introduction
: Python Fabian Sievers Higgins Lab, Conway Institute University College Dublin Wednesday, 2017-10-04 Outline Goals Teach basic programming concepts Apply these concepts using Python Use Python Packages
More informationLibSerial Documentation
LibSerial Documentation Release 1.0.0rc1 CrayzeeWulf Apr 05, 2018 Contents: 1 Feature Summary 3 2 Description 5 3 Download 7 4 Install 9 5 Tutorial 11 5.1 Opening a Serial Port I/O Stream....................................
More informationIntroduction. Overview of 201 Lab and Linux Tutorials. Stef Nychka. September 10, Department of Computing Science University of Alberta
1 / 12 Introduction Overview of 201 Lab and Linux Tutorials Stef Nychka Department of Computing Science University of Alberta September 10, 2007 2 / 12 Can you Log In? Should be same login and password
More information02/03/15. Compile, execute, debugging THE ECLIPSE PLATFORM. Blanks'distribu.on' Ques+ons'with'no'answer' 10" 9" 8" No."of"students"vs."no.
Compile, execute, debugging THE ECLIPSE PLATFORM 30" Ques+ons'with'no'answer' What"is"the"goal"of"compila5on?" 25" What"is"the"java"command"for" compiling"a"piece"of"code?" What"is"the"output"of"compila5on?"
More informationCOL100 Lab 2. I semester Week 2, Open the web-browser and visit the page and visit the COL100 course page.
COL100 Lab 2 I semester 2017-18 Week 2, 2017 Objective More familiarisation with Linux and its standard commands Part 1 1. Login to your system and open a terminal window. 2. Open the web-browser and visit
More informationOperating Systems Lab
Operating Systems Lab Islamic University Gaza Engineering Faculty Department of Computer Engineering Fall 2012 ECOM 4010: Operating Systems Lab Eng: Ahmed M. Ayash Lab # 4 Paths, Links & File Permissions
More informationWorking with Shell Scripting. Daniel Balagué
Working with Shell Scripting Daniel Balagué Editing Text Files We offer many text editors in the HPC cluster. Command-Line Interface (CLI) editors: vi / vim nano (very intuitive and easy to use if you
More informationHierarchical Data Format query language (HDFql)
Hierarchical Data Format query language (HDFql) Reference Manual Version 1.5.0 December 2017 Copyright (C) 2016-2017 This document is part of the Hierarchical Data Format query language (HDFql). For more
More informationCoding Getting Started with Python
DEVNET-3602 Coding 1002 - Getting Started with Python Matthew DeNapoli, DevNet Developer Evangelist Cisco Spark How Questions? Use Cisco Spark to communicate with the speaker after the session 1. Find
More informationMavrig. a Tcl application construction kit. Jean-Claude Wippler Equi 4 Software, NL. EuroTcl 2008, Strasbourg, FR
Mavrig a Tcl application construction kit Jean-Claude Wippler Equi 4 Software, NL EuroTcl 2008, Strasbourg, FR Let s write an app Tons of packages to build with - Tcllib, etc Choose:! file structure, dev
More informationRed Hat Developer Tools
Red Hat Developer Tools 2018.2 Using Clang and LLVM Toolset Installing and Using Clang and LLVM Toolset Last Updated: 2018-04-26 Red Hat Developer Tools 2018.2 Using Clang and LLVM Toolset Installing
More informationMar-05 TETware training course 7-66
7.6 - The PHP-CLI API The PHP-CLI API provides a binding to the TET C API All the functions provided by the API are referenced from a single PHP module phptet.php This module must be included at the start
More informationLab 1: First Steps in C++ - Eclipse
Lab 1: First Steps in C++ - Eclipse Step Zero: Select workspace 1. Upon launching eclipse, we are ask to chose a workspace: 2. We select a new workspace directory (e.g., C:\Courses ): 3. We accept the
More informationUsing echo command in shell script
Lab 4a Shell Script Lab 2 Using echo command in shell script Objective Upon completion of this lab, the student will be able to use echo command in the shell script. Scenario The student is the administrator
More informationIntroduction to Linux. Woo-Yeong Jeong Computer Systems Laboratory Sungkyunkwan University
Introduction to Linux Woo-Yeong Jeong (wooyeong@csl.skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu What is Linux? A Unix-like operating system of a computer What is an
More informationDirect Memory Access. Lecture 2 Pointer Revision Command Line Arguments. What happens when we use pointers. Same again with pictures
Lecture 2 Pointer Revision Command Line Arguments Direct Memory Access C/C++ allows the programmer to obtain the value of the memory address where a variable lives. To do this we need to use a special
More informationCompiling Software on UNIX. System Administration Decal Spring 2009 Lecture #4 George Wu Slides prepared by Joshua Kwan
Compiling Software on UNIX System Administration Decal Spring 2009 Lecture #4 George Wu Slides prepared by Joshua Kwan Today How to turn source code into programs that run on Linux? What if that software
More informationA framework for BGP data analysis
A framework for BGP data analysis Alberto Dainotti, Alistair King, Chiara Orsini, Vasco Asturiano chiara@caida.org BGPSTREAM A software framework for the historical analysis and real-time monitoring BGP
More informationEECS Software Tools. Lab 2 Tutorial: Introduction to UNIX/Linux. Tilemachos Pechlivanoglou
EECS 2031 - Software Tools Lab 2 Tutorial: Introduction to UNIX/Linux Tilemachos Pechlivanoglou (tipech@eecs.yorku.ca) Sep 22 & 25, 2017 Material marked with will be in your exams Sep 22 & 25, 2017 Introduction
More informationCMPT 300. Operating Systems. Brief Intro to UNIX and C
CMPT 300 Operating Systems Brief Intro to UNIX and C Outline Welcome Review Questions UNIX basics and Vi editor Using SSH to remote access Lab2(4214) Compiling a C Program Makefile Basic C/C++ programming
More informationChapter 1 - Introduction. September 8, 2016
Chapter 1 - Introduction September 8, 2016 Introduction Overview of Linux/Unix Shells Commands: built-in, aliases, program invocations, alternation and iteration Finding more information: man, info Help
More informationCreating a Shell or Command Interperter Program CSCI411 Lab
Creating a Shell or Command Interperter Program CSCI411 Lab Adapted from Linux Kernel Projects by Gary Nutt and Operating Systems by Tannenbaum Exercise Goal: You will learn how to write a LINUX shell
More informationmicrohowto esom/9263, DNP/9265 Creating a C-Program
esom/9263, DNP/9265 Creating a C-Program microhowto SSV Embedded Systems Dünenweg 5 D-30419 Hannover Phone: +49 (0)511/40 000-0 Fax: +49 (0)511/40 000-40 E-mail: sales@ssv-embedded.de Manual Revision:
More informationCS1600 Lab Assignment 1 Spring 2016 Due: Feb. 2, 2016 POINTS: 10
CS1600 Lab Assignment 1 Spring 2016 Due: Feb. 2, 2016 POINTS: 10 PURPOSE: The purpose of this lab is to acquaint you with the C++ programming environment on storm. PROCEDURES: You will use Unix/Linux environment
More informationHand-on Labs for Chapter 1 and Appendix A CSCE 212 Introduction to Computer Architecture, Spring
Hand-on Labs for Chapter 1 and Appendix A CSCE 212 Introduction to Computer Architecture, Spring 2019 https://passlab.github.io/csce212/ Department of Computer Science and Engineering Yonghong Yan yanyh@cse.sc.edu
More informationECE 2036 Lab 1: Introduction to Software Objects
ECE 2036 Lab 1: Introduction to Software Objects Assigned: Aug 24/25 2015 Due: September 1, 2015 by 11:59 PM Reading: Deitel& Deitel Chapter 2-4 Student Name: Check Off/Score Part 1: Check Off/Score Part
More informationProgramming the DMCC in C
Programming the DMCC in C Task This tutorial will teach you how to write your first program on a dual motor control cape (DMCC) through the BeagleBone microcontroller. The DMCC is a stackable board that
More informationShell Scripting. Jeremy Sanders. October 2011
Shell Scripting Jeremy Sanders October 2011 1 Introduction If you use your computer for repetitive tasks you will find scripting invaluable (one of the advantages of a command-line interface). Basically
More informationIntroduction to Linux
Introduction to Linux January 2011 Don Bahls User Consultant (Group Leader) bahls@arsc.edu (907) 450-8674 Overview The shell Common Commands File System Organization Permissions Environment Variables I/O
More informationIntroduction to Linux
Introduction to Linux Prof. Jin-Soo Kim( jinsookim@skku.edu) TA - Dong-Yun Lee (dylee@csl.skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu What is Linux? A Unix-like operating
More informationCVS Application. William Jiang
CVS Application William Jiang CVS Brief CVS (Concurrent Versions System), is an open-source version control system. Using it, we can record the history of our source files, coordinate with team developing,
More informationAPPENDIX A : KEYWORDS... 2 APPENDIX B : OPERATORS... 3 APPENDIX C : OPERATOR PRECEDENCE... 4 APPENDIX D : ESCAPE SEQUENCES... 5
APPENDIX A : KEYWORDS... 2 APPENDIX B : OPERATORS... 3 APPENDIX C : OPERATOR PRECEDENCE... 4 APPENDIX D : ESCAPE SEQUENCES... 5 APPENDIX E : ASCII CHARACTER SET... 6 APPENDIX F : USING THE GCC COMPILER
More informationsbb COIN-OR Simple Branch-and-Cut
sbb COIN-OR Simple Branch-and-Cut Additional Notes for sbb COIN-OR Tutorial CORS/INFORMS Joint Meeting, Banff, May, 2004 Lou Hafer Computing Science Simon Fraser University May 14, 2004 The material on
More informationLinux Command Line Interface. December 27, 2017
Linux Command Line Interface December 27, 2017 Foreword It is supposed to be a refresher (?!) If you are familiar with UNIX/Linux/MacOS X CLI, this is going to be boring... I will not talk about editors
More informationOpenPDK Production Value and Benchmark Results
OpenPDK Production Value and Benchmark Results Philippe MAGARSHACK Executive Vice-President, Design Enablement and Services June 2 nd, 2014 ST s Strong technology portfolio : Several R&D Partnerships &
More informationScripting Languages Course 1. Diana Trandabăț
Scripting Languages Course 1 Diana Trandabăț Master in Computational Linguistics - 1 st year 2017-2018 Today s lecture Introduction to scripting languages What is a script? What is a scripting language
More informationLab 1: Introduction to C++
CPSC 221, Jan-Apr 2017 Lab 1 1/5 Lab 1: Introduction to C++ This is an introduction to C++ through some simple activities. You should also read the C++ Primer in your textbook, and practice as much as
More information1. What statistic did the wc -l command show? (do man wc to get the answer) A. The number of bytes B. The number of lines C. The number of words
More Linux Commands 1 wc The Linux command for acquiring size statistics on a file is wc. This command provides the line count, word count and number of bytes in a file. Open up a terminal, make sure you
More informationIntroduction to MD++
Manual 01 for MD++ Introduction to MD++ Keonwook Kang and Wei Cai January 10, 2007 1 Overview MD++ is a molecular dynamics simulation package written in C++. It is originally developed by Wei Cai when
More informationName: Peter Lemieszewski Venue: Education
z/tpf EE V1.1 z/tpfdf V1.1 TPF Toolkit for WebSphere Studio V3 TPF Operations Server V1.2 IBM Software Group TPF Users Group Fall 2006 LINUX FOR TPFERS Name: Peter Lemieszewski Venue: Education AIM Enterprise
More informationCS 392/681 Lab 6 Experiencing Buffer Overflows and Format String Vulnerabilities
CS 392/681 Lab 6 Experiencing Buffer Overflows and Format String Vulnerabilities Given: November 13, 2003 Due: November 20, 2003 1 Motivation Buffer overflows and format string vulnerabilities are widespread
More informationRTXAGENDA v Use Manual. A program, free and easy to use, to modify your RT4 phonebook, on PC.
RTXAGENDA v01.05 Use Manual A program, free and easy to use, to modify your RT4 phonebook, on PC. mira308sw 15/05/2011 Summary Introduction... 3 Installation... 3 What it need, how use it... 3 WARNING...
More information9.2 Linux Essentials Exam Objectives
9.2 Linux Essentials Exam Objectives This chapter will cover the topics for the following Linux Essentials exam objectives: Topic 3: The Power of the Command Line (weight: 10) 3.3: Turning Commands into
More informationOpen Process Spec Adoption: a Case Study
Open Process Spec Adoption: a Case Study June 3 rd, 2014 AGENDA 2 OpenPDK & OPS Introduction What does OPS looks like? Let s do an openpdk with OPS Target of OpenPDK Coalition 3 a set of open standards
More informationHomework 4: (GRADUATE VERSION)
Homework 4: Wavefront Path Planning and Path Smoothing (GRADUATE VERSION) Assigned: Thursday, October 16, 2008 Due: Friday, October 31, 2008 at 23:59:59 In this assignment, you will write a path planner
More informationRTXAGENDA v Use Manual. A program, free and easy to use, to modify your RT4, RT5 or RT6 phonebook, on PC.
RTXAGENDA v01.08 Use Manual A program, free and easy to use, to modify your RT4, RT5 or RT6 phonebook, on PC. mira308sw 18/04/2013 Summary Introduction... 3 Installation... 3 What it need, how use it...
More informationstreamio Documentation
streamio Documentation Release 0.1.0.dev James Mills April 17, 2014 Contents 1 About 3 1.1 Examples................................................. 3 1.2 Requirements...............................................
More informationCS 220: Introduction to Parallel Computing. Beginning C. Lecture 2
CS 220: Introduction to Parallel Computing Beginning C Lecture 2 Today s Schedule More C Background Differences: C vs Java/Python The C Compiler HW0 8/25/17 CS 220: Parallel Computing 2 Today s Schedule
More informationEECE 285 VLSI Design. Cadence Tutorial EECE 285 VLSI. By: Kevin Dick Co-author: Jeff Kauppila Co-author: Dr. Arthur Witulski
Cadence Tutorial EECE 285 VLSI By: Kevin Dick Co-author: Jeff Kauppila Co-author: Dr. Arthur Witulski 1 Table of Contents Purpose of Cadence 1) The Purpose of Cadence pg. 4 Linux 1) The Purpose of Linux
More informationCreating LEF File. Abstract Generation: Creating LEF Tutorial File Release Date: 01/13/2004. Export GDS:
Creating LEF Tutorial 1-1 - Creating LEF File Abstract Generation: Export GDS: Abstract generator comes as a part of the Silicon Ensemble package. As such, it cannot directly read ICFB library databases.
More informationTutorial on text transformation with pure::variants
Table of Contents 1. Overview... 1 2. About this tutorial... 1 3. Setting up the project... 2 3.1. Source Files... 4 3.2. Documentation Files... 5 3.3. Build Files... 6 4. Setting up the feature model...
More informationUsing WestGrid from the desktop Oct on Access Grid
Using WestGrid from the desktop Oct 11 2007 on Access Grid Introduction Simon Sharpe, UCIT Client Services The best way to contact WestGrid support is to email support@westgrid.ca This seminar gives you
More informationLecture 1. A. Sahu and S. V. Rao. Indian Institute of Technology Guwahati
Lecture 1 Introduction to Computing A. Sahu and S. V. Rao Dept of Comp. Sc. & Engg. Indian Institute of Technology Guwahati 1 Outline Computer System Problem Solving and Flow Chart Linux Command ls, mkdir,
More informationLinux Systems Administration Shell Scripting Basics. Mike Jager Network Startup Resource Center
Linux Systems Administration Shell Scripting Basics Mike Jager Network Startup Resource Center mike.jager@synack.co.nz These materials are licensed under the Creative Commons Attribution-NonCommercial
More informationUI6A. User Environments and Scripting Languages: Embedding vs Extending
UI6A. User Environments and Scripting Languages: Embedding vs Extending Date: 16 Aug 2002 (draft v0) Contributors: J. Chiang (GSFC-UMBC) Purpose Analyzing data interactively generally presupposes the existence
More informationApplied Informatics POCO PRO C++ Frameworks
Applied Informatics POCO PRO C++ Frameworks Getting Started Guide Version 1.10 Purpose of This Document This document guides developers interested in the POCO PRO C++ Frameworks by Applied Informatics
More informationVersioning. Jurriaan Hage homepage: Slides stolen from Eelco Dolstra.
Versioning Jurriaan Hage e-mail: jur@cs.uu.nl homepage: http://www.cs.uu.nl/people/jur/ Slides stolen from Eelco Dolstra Department of Information and Computing Sciences, Universiteit Utrecht August 24,
More informationEclipse CDT Tutorial. Eclipse CDT Homepage: Tutorial written by: James D Aniello
Eclipse CDT Tutorial Eclipse CDT Homepage: http://www.eclipse.org/cdt/ Tutorial written by: James D Aniello Hello and welcome to the Eclipse CDT Tutorial. This tutorial will teach you the basics of the
More informationC Compilation Model. Comp-206 : Introduction to Software Systems Lecture 9. Alexandre Denault Computer Science McGill University Fall 2006
C Compilation Model Comp-206 : Introduction to Software Systems Lecture 9 Alexandre Denault Computer Science McGill University Fall 2006 Midterm Date: Thursday, October 19th, 2006 Time: from 16h00 to 17h30
More informationPRINCIPLES OF OPERATING SYSTEMS
PRINCIPLES OF OPERATING SYSTEMS Tutorial-1&2: C Review CPSC 457, Spring 2015 May 20-21, 2015 Department of Computer Science, University of Calgary Connecting to your VM Open a terminal (in your linux machine)
More informationCommand-line arguments processing in bash
Command-line arguments processing in bash Matěj Týč, OpenAlt 2017 1 / 24 Outline How people tend to design interface of their bash scripts? What exactly is command-line interface? How is bash diferent
More informationReviewing gcc, make, gdb, and Linux Editors 1
Reviewing gcc, make, gdb, and Linux Editors 1 Colin Gordon csgordon@cs.washington.edu University of Washington CSE333 Section 1, 3/31/11 1 Lots of material borrowed from 351/303 slides Colin Gordon (University
More informationCS240: Programming in C
CS240: Programming in C Lecture 1: Class overview. Cristina Nita-Rotaru Lecture 1/ Fall 2013 1 WELCOME to CS240 Cristina Nita-Rotaru Lecture 1/ Fall 2013 2 240 Team Instructor: Cristina Nita-Rotaru Special
More informationEL2310 Scientific Programming
(yaseminb@kth.se) Overview Overview Roots of C Getting started with C Closer look at Hello World Programming Environment Discussion Basic Datatypes and printf Schedule Introduction to C - main part of
More informationR in Linguistic Analysis. Week 2 Wassink Autumn 2012
R in Linguistic Analysis Week 2 Wassink Autumn 2012 Today R fundamentals The anatomy of an R help file but first... How did you go about learning the R functions in the reading? More help learning functions
More informationHow Emacs Evolves to Suit Your Needs p. 1 How Emacs Differs from Other Software p. 3 Software and the User p. 4 Emacs Vocabulary and Conventions p.
Introduction p. xxix How Emacs Evolves to Suit Your Needs p. 1 How Emacs Differs from Other Software p. 3 Software and the User p. 4 Emacs Vocabulary and Conventions p. 7 Key Conventions p. 9 Emacs and
More informationChannel Archiver Update. Thomas Birke / Kay Kasemir LANL November 2001
Channel Archiver Update Thomas Birke / Kay Kasemir LANL November 2001 Overall Structure Config CA CGIExport Online Access ArchiveExport to Spreadsheet/GNUplot CAManager ArchiveEngine WinBrowser StripTool
More informationPROJECT INFRASTRUCTURE AND BASH INTRODUCTION MARKUS PILMAN<
PROJECT INFRASTRUCTURE AND BASH INTRODUCTION MARKUS PILMAN< MPILMAN@INF.ETHZ.CH> ORGANIZATION Tutorials on Tuesdays - Sometimes, will be announced In General: no exercise sessions (unless you get an email
More informationCSE 101 Introduction to Computers Development / Tutorial / Lab Environment Setup
CSE 101 Introduction to Computers Development / Tutorial / Lab Environment Setup Purpose: The purpose of this lab is to setup software that you will be using throughout the term for learning about Python
More informationTable of Contents. Table of Contents Coupling QuantumATK with Synopsys tools
Table of Contents Table of Contents Coupling QuantumATK with Synopsys tools Preparations Installing the addon New project Silicon crystal DFT model setup Running the calculation Visualizing the band structure
More informationCS 3813/718 Fall Python Programming. Professor Liang Huang.
CS 3813/718 Fall 2012 Python Programming Professor Liang Huang huang@cs.qc.cuny.edu http://vision.cs.qc.cuny.edu/huang/python-2012f/ Logistics Lectures: TTh 9:25-10:40 am SB B-141 Personnel Instructor
More informationCS 300 Leftovers. CS460 Pacific University 1
CS 300 Leftovers Pacific University 1 argc/argv The C Programming Language section 5.10, page 114 int main(int argc, char** argv) argc - number of entries in argv argv - array of character pointers containing
More informationC++ For Science and Engineering Lecture 2
C++ For Science and Engineering Lecture 2 John Chrispell Tulane University Wednesday August 25, 2010 Basic Linux Commands Command ls pwd cd What it does. lists the files in the current directory prints
More informationWelcome to Python! Ilhoe Jung. Graphics & Media Lab
Welcome to Python! 2013. 07. 23 Ilhoe Jung Graphics & Media Lab Course schedule [Lecture 1] Introduction & Basic Grammar [Lecture 2] Data type & Class [Lecture 3] External libraries for python Introducing
More informationIntroduction to Linux for BlueBEAR. January
Introduction to Linux for BlueBEAR January 2019 http://intranet.birmingham.ac.uk/bear Overview Understanding of the BlueBEAR workflow Logging in to BlueBEAR Introduction to basic Linux commands Basic file
More informationLinux at the Command Line Don Johnson of BU IS&T
Linux at the Command Line Don Johnson of BU IS&T We ll start with a sign in sheet. We ll end with a class evaluation. We ll cover as much as we can in the time allowed; if we don t cover everything, you
More informationSetting up PostgreSQL
Setting up PostgreSQL 1 Introduction to PostgreSQL PostgreSQL is an object-relational database management system based on POSTGRES, which was developed at the University of California at Berkeley. PostgreSQL
More informationSE420 Software Quality Assurance
SE420 Software Quality Assurance http://dilbert.com/strips/comic/2007-07-30/ Lecture 11 Testing Automation and Process Improvement October 28, 2014 Sam Siewert Assignment #5 Due 11/9 Reminders Remaining
More informationCommunication With the Outside World
Communication With the Outside World Program Return Code Arguments From the Program Call Aborting Program Calling Other Programs Data Processing Course, I. Hrivnacova, IPN Orsay I. Hrivnacova @ Data Processing
More information