Bluespec Reference Guide

Total Page:16

File Type:pdf, Size:1020Kb

Bluespec Reference Guide BluespecTM SystemVerilog Reference Guide Revision: 16 June 2010 Copyright c 2000 { 2010 Bluespec, Inc. All rights reserved 1 Reference Guide Bluespec SystemVerilog Trademarks and copyrights Verilog is a trademark of IEEE (the Institute of Electrical and Electronics Engineers). The Verilog standard is copyrighted, owned and maintained by IEEE. VHDL is a trademark of IEEE (the Institute of Electrical and Electronics Engineers). The VHDL standard is copyrighted, owned and maintained by IEEE. SystemVerilog is a trademark of Accellera, Inc. The SystemVerilog standard is owned and maintained by Accellera. Bluespec is a trademark of Bluespec, Inc. AzureIP is a trademark of Bluespec, Inc. 2 Bluespec SystemVerilog Reference Guide Contents Table of Contents 3 1 Introduction 13 1.1 Meta notation........................................ 13 2 Lexical elements 13 2.1 Whitespace and comments................................. 14 2.2 Identifiers and keywords.................................. 14 2.3 Integer literals....................................... 14 2.3.1 Type conversion of integer literals........................ 15 2.4 Real literals......................................... 15 2.4.1 Type conversion of real literals.......................... 16 2.5 String literals........................................ 16 2.6 Don't-care values...................................... 17 2.7 Compiler directives..................................... 17 2.7.1 File inclusion: `include and `line......................... 17 2.7.2 Macro definition and substitution: `define and related directives....... 18 2.7.3 Conditional compilation: `ifdef and related directives.............. 19 3 Packages and the outermost structure of a BSV design 20 3.1 Scopes, name clashes and qualified identifiers...................... 21 3.2 The Standard Prelude package.............................. 22 3.3 AzureIPTM Foundation Libraries............................. 22 4 Types 22 4.1 Polymorphism........................................ 24 4.2 Provisos (brief intro).................................... 24 4.2.1 The pseudo-function valueof (or valueOf).................... 26 4.3 A brief introduction to deriving clauses......................... 26 5 Modules and interfaces, and their instances 27 5.1 Explicit state via module instantiation, not variables.................. 27 5.2 Interface declaration.................................... 28 5.2.1 Subinterfaces.................................... 30 5.3 Module definition...................................... 31 5.4 Module and interface instantiation............................ 33 5.4.1 Short form instantiation.............................. 33 3 Reference Guide Bluespec SystemVerilog 5.4.2 Long form instantiation.............................. 34 5.5 Interface definition (definition of methods)........................ 35 5.5.1 Shorthands for Action and ActionValue method definitions.......... 36 5.5.2 Definition of subinterfaces............................. 37 5.5.3 Definition of methods and subinterfaces by assignment............. 38 5.6 Rules in module definitions................................ 38 5.7 Examples.......................................... 39 5.8 Synthesizing Modules................................... 41 5.8.1 Type Polymorphism................................ 42 5.8.2 Module Interfaces and Arguments........................ 43 6 Static and dynamic semantics 44 6.1 Static semantics...................................... 44 6.1.1 Type checking................................... 44 6.1.2 Proviso checking and bit-width constraints................... 45 6.1.3 Static elaboration................................. 45 6.2 Dynamic semantics..................................... 45 6.2.1 Reference semantics................................ 46 6.2.2 Mapping into efficient parallel clocked synchronous hardware......... 46 6.2.3 How rules are chosen to fire............................ 48 6.2.4 Mapping specific hardware models........................ 49 7 User-defined types (type definitions) 49 7.1 Type synonyms....................................... 50 7.2 Enumerations........................................ 51 7.3 Structs and tagged unions................................. 52 8 Variable declarations and statements 55 8.1 Variable and array declaration and initialization.................... 55 8.2 Variable assignment.................................... 56 8.3 Implicit declaration and initialization........................... 57 8.4 Register reads and writes................................. 58 8.4.1 Registers and square-bracket notation...................... 59 8.4.2 Registers and range notation........................... 60 8.4.3 Registers and struct member selection...................... 60 8.5 Begin-end statements.................................... 61 8.6 Conditional statements................................... 61 8.7 Loop statements...................................... 63 4 Bluespec SystemVerilog Reference Guide 8.7.1 While loops..................................... 63 8.7.2 For loops...................................... 63 8.8 Function definitions.................................... 64 8.8.1 Definition of functions by assignment....................... 65 8.8.2 Function types................................... 66 9 Expressions 66 9.1 Don't-care expressions................................... 66 9.2 Conditional expressions.................................. 67 9.3 Unary and binary operators................................ 67 9.4 Bit concatenation and selection.............................. 68 9.5 Begin-end expressions................................... 69 9.6 Actions and action blocks................................. 69 9.7 Actionvalue blocks..................................... 71 9.8 Function calls........................................ 73 9.9 Method calls........................................ 73 9.10 Static type assertions.................................... 74 9.11 Struct and union expressions............................... 74 9.11.1 Struct expressions................................. 75 9.11.2 Struct member selection.............................. 75 9.11.3 Tagged union expressions............................. 75 9.11.4 Tagged union member selection.......................... 76 9.12 Interface expressions.................................... 77 9.12.1 Differences between interfaces and structs.................... 78 9.13 Rule expressions...................................... 78 10 Pattern matching 80 10.1 Case statements with pattern matching......................... 82 10.2 Case expressions with pattern matching......................... 83 10.3 Pattern matching in if statements and other contexts.................. 84 10.4 Pattern matching assignment statements......................... 85 11 Finite state machines 86 5 Reference Guide Bluespec SystemVerilog 12 Important primitives 86 12.1 The types bit and Bit ................................... 86 12.1.1 Bit-width compatibility.............................. 87 12.2 UInt, Int, int and Integer................................. 87 12.3 String............................................ 87 12.4 Tuples............................................ 87 12.5 Registers........................................... 88 12.6 FIFOs............................................ 89 12.7 FIFOFs........................................... 89 12.8 System tasks and functions................................ 90 12.8.1 Displaying information............................... 90 12.8.2 $format....................................... 91 12.8.3 File data type.................................... 92 12.8.4 Opening and closing file operations....................... 92 12.8.5 Writing to a file.................................. 93 12.8.6 Formatting output to a string........................... 94 12.8.7 Reading from a file................................. 94 12.8.8 Flushing output.................................. 95 12.8.9 Stopping simulation................................ 95 12.8.10 VCD dumping................................... 95 12.8.11 Time functions................................... 95 12.8.12 Real functions................................... 96 12.8.13 Testing command line input............................ 96 13 Guiding the compiler with attributes 96 13.1 Verilog module generation attributes........................... 97 13.1.1 synthesize ..................................... 97 13.1.2 noinline ...................................... 97 13.2 Interface attributes..................................... 97 13.2.1 Renaming attributes................................ 98 13.2.2 Port protocol attributes.............................. 99 13.2.3 Interface attributes example............................ 100 13.3 Scheduling attributes.................................... 101 13.3.1 fire_when_enabled ................................ 101 13.3.2 no_implicit_conditions ............................ 102 13.3.3 descending_urgency ............................... 103 13.3.4 execution_order ................................. 105 6 Bluespec SystemVerilog Reference Guide 13.3.5 mutually_exclusive .............................. 106 13.3.6 conflict_free .................................. 106 13.3.7 preempts ...................................... 107 13.4 Evaluation behavior attributes.............................. 107 13.4.1 split and nosplit ................................ 107 13.5 Input clock and reset attributes.............................. 108 13.5.1 Clock and reset prefix naming attributes..................... 109 13.5.2 Gate synthesis attributes............................
Recommended publications
  • 1=Haskell =1=Making Our Own Types and Typeclasses
    Haskell Making Our Own Types and Typeclasses http://igm.univ-mlv.fr/~vialette/?section=teaching St´ephaneVialette LIGM, Universit´eParis-Est Marne-la-Vall´ee November 13, 2016 Making Our Own Types and Typeclasses Algebraic data types intro So far, we've run into a lot of data types: Bool, Int, Char, Maybe, etc. But how do we make our own? One way is to use the data keyword to define a type. Let's see how the Bool type is defined in the standard library. data Bool= False| True data means that we're defining a new data type. Making Our Own Types and Typeclasses Algebraic data types intro data Bool= False| True The part before the = denotes the type, which is Bool. The parts after the = are value constructors. They specify the different values that this type can have. The | is read as or. So we can read this as: the Bool type can have a value of True or False. Both the type name and the value constructors have to be capital cased. Making Our Own Types and Typeclasses Algebraic data types intro We can think of the Int type as being defined like this: data Int=-2147483648|-2147483647| ...|-1|0|1|2| ...| 2147483647 The first and last value constructors are the minimum and maximum possible values of Int. It's not actually defined like this, the ellipses are here because we omitted a heapload of numbers, so this is just for illustrative purposes. Shape let's think about how we would represent a shape in Haskell.
    [Show full text]
  • A Polymorphic Type System for Extensible Records and Variants
    A Polymorphic Typ e System for Extensible Records and Variants Benedict R. Gaster and Mark P. Jones Technical rep ort NOTTCS-TR-96-3, November 1996 Department of Computer Science, University of Nottingham, University Park, Nottingham NG7 2RD, England. fbrg,[email protected] Abstract b oard, and another indicating a mouse click at a par- ticular p oint on the screen: Records and variants provide exible ways to construct Event = Char + Point : datatyp es, but the restrictions imp osed by practical typ e systems can prevent them from b eing used in ex- These de nitions are adequate, but they are not par- ible ways. These limitations are often the result of con- ticularly easy to work with in practice. For example, it cerns ab out eciency or typ e inference, or of the di- is easy to confuse datatyp e comp onents when they are culty in providing accurate typ es for key op erations. accessed by their p osition within a pro duct or sum, and This pap er describ es a new typ e system that reme- programs written in this way can b e hard to maintain. dies these problems: it supp orts extensible records and To avoid these problems, many programming lan- variants, with a full complement of p olymorphic op era- guages allow the comp onents of pro ducts, and the al- tions on each; and it o ers an e ective type inference al- ternatives of sums, to b e identi ed using names drawn gorithm and a simple compilation metho d.
    [Show full text]
  • IBM Virtualization Engine Platform Version 2 Technical Presentation Guide
    Front cover IBM Virtualization Engine Platform Version 2 Technical Presentation Guide Describes the Virtualization Engine management collection components Describes the Virtual resources for all IBM ^ servers Provides slides with speaker notes Jim Cook Christian Matthys Takaki Kimachi EunYoung Ko Ernesto A Perez Edelgard Schittko Laurent Vanel ibm.com/redbooks International Technical Support Organization IBM Virtualization Engine Platform Version 2 Technical Presentation Guide March 2006 SG24-7112-00 Note: Before using this information and the product it supports, read the information in “Notices” on page vii. First Edition (March 2006) This edition applies to the IBM Virtualization Engine Version 2.1 © Copyright International Business Machines Corporation 2006. All rights reserved. Note to U.S. Government Users Restricted Rights -- Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Contents Notices . vii Trademarks . viii Preface . ix The team that wrote this redbook. .x Become a published author . xii Comments welcome. xii Chapter 1. Introduction to the Virtualization Engine platform . 1 1.1 The IBM Systems Agenda . 2 1.2 From Web services to the On Demand Operating Environment. 5 1.3 The On Demand Operating Environment architecture details. 10 1.4 Standards: from OGSI to WSDM . 13 1.5 The Virtualization Engine platform . 20 1.6 Virtual resources . 24 1.7 The Virtualization Engine management collection . 26 1.8 What is new with the Virtualization Engine Version 2 . 28 1.9 The Virtualization Engine Version 2 products offerings . 31 1.10 Virtualization: topology and terminology . 35 1.11 Management servers: the supported operating systems . 37 1.12 Managed servers: the supported operating systems .
    [Show full text]
  • CA SOLVE:FTS Installation Guide
    CA SOLVE:FTS Installation Guide Release 12.1 This Documentation, which includes embedded help systems and electronically distributed materials, (hereinafter referred to as the “Documentation”) is for your informational purposes only and is subject to change or withdrawal by CA at any time. This Documentation may not be copied, transferred, reproduced, disclosed, modified or duplicated, in whole or in part, without the prior written consent of CA. This Documentation is confidential and proprietary information of CA and may not be disclosed by you or used for any purpose other than as may be permitted in (i) a separate agreement between you and CA governing your use of the CA software to which the Documentation relates; or (ii) a separate confidentiality agreement between you and CA. Notwithstanding the foregoing, if you are a licensed user of the software product(s) addressed in the Documentation, you may print or otherwise make available a reasonable number of copies of the Documentation for internal use by you and your employees in connection with that software, provided that all CA copyright notices and legends are affixed to each reproduced copy. The right to print or otherwise make available copies of the Documentation is limited to the period during which the applicable license for such software remains in full force and effect. Should the license terminate for any reason, it is your responsibility to certify in writing to CA that all copies and partial copies of the Documentation have been returned to CA or destroyed. TO THE EXTENT PERMITTED BY APPLICABLE LAW, CA PROVIDES THIS DOCUMENTATION “AS IS” WITHOUT WARRANTY OF ANY KIND, INCLUDING WITHOUT LIMITATION, ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NONINFRINGEMENT.
    [Show full text]
  • Java Secrets.Pdf
    Java Secrets by Elliotte Rusty Harold IDG Books, IDG Books Worldwide, Inc. ISBN: 0764580078 Pub Date: 05/01/97 Buy It Preface About the Author Part I—How Java Works Chapter 1—Introducing Java SECRETS A Little Knowledge Can Be a Dangerous Thing What’s in This Book? Part I: How Java Works Part II: The sun Classes Part III: Platform-Dependent Java Why Java Secrets? Broader applicability More power Inspiration Where Did the Secrets Come From? Where is the documentation? The source code The API documentation What Versions of Java Are Covered? Some Objections Java is supposed to be platform independent Why aren’t these things documented? FUD (fear, uncertainty, and doubt) How secret is this, anyway? Summary Chapter 2—Primitive Data Types Bytes in Memory Variables, Values, and Identifiers Place-Value Number Systems Binary notation Hexadecimal notation Octal notation Integers ints Long, short, and byte Floating-Point Numbers Representing floating-point numbers in binary code Special values Denormalized floating-point numbers CHAR ASCII ISO Latin-1 Unicode UTF8 Boolean Cross-Platform Issues Byte order Unsigned integers Integer widths Conversions and Casting Using a cast The mechanics of conversion Bit-Level Operators Some terminology Bitwise operators Bit shift operators Summary Chapter 2—Primitive Data Types Bytes in Memory Variables, Values, and Identifiers Place-Value Number Systems Binary notation Hexadecimal notation Octal notation Integers ints Long, short, and byte Floating-Point Numbers Representing floating-point numbers in binary code
    [Show full text]
  • Lecture Slides
    Outline Meta-Classes Guy Wiener Introduction AOP Classes Generation 1 Introduction Meta-Classes in Python Logging 2 Meta-Classes in Python Delegation Meta-Classes vs. Traditional OOP 3 Meta-Classes vs. Traditional OOP Outline Meta-Classes Guy Wiener Introduction AOP Classes Generation 1 Introduction Meta-Classes in Python Logging 2 Meta-Classes in Python Delegation Meta-Classes vs. Traditional OOP 3 Meta-Classes vs. Traditional OOP What is Meta-Programming? Meta-Classes Definition Guy Wiener Meta-Program A program that: Introduction AOP Classes One of its inputs is a program Generation (possibly itself) Meta-Classes in Python Its output is a program Logging Delegation Meta-Classes vs. Traditional OOP Meta-Programs Nowadays Meta-Classes Guy Wiener Introduction AOP Classes Generation Compilers Meta-Classes in Python Code Generators Logging Delegation Model-Driven Development Meta-Classes vs. Traditional Templates OOP Syntactic macros (Lisp-like) Meta-Classes The Problem With Static Programming Meta-Classes Guy Wiener Introduction AOP Classes Generation Meta-Classes How to share features between classes and class hierarchies? in Python Logging Share static attributes Delegation Meta-Classes Force classes to adhere to the same protocol vs. Traditional OOP Share code between similar methods Meta-Classes Meta-Classes Guy Wiener Introduction AOP Classes Definition Generation Meta-Classes in Python Meta-Class A class that creates classes Logging Delegation Objects that are instances of the same class Meta-Classes share the same behavior vs. Traditional OOP Classes that are instances of the same meta-class share the same behavior Meta-Classes Meta-Classes Guy Wiener Introduction AOP Classes Definition Generation Meta-Classes in Python Meta-Class A class that creates classes Logging Delegation Objects that are instances of the same class Meta-Classes share the same behavior vs.
    [Show full text]
  • Haskell-Style Type Classes with Isabelle/Isar
    Isar ∀ Isabelle= α λ β → Haskell-style type classes with Isabelle/Isar Florian Haftmann 20 February 2021 Abstract This tutorial introduces Isar type classes, which are a convenient mech- anism for organizing specifications. Essentially, they combine an op- erational aspect (in the manner of Haskell) with a logical aspect, both managed uniformly. 1 INTRODUCTION 1 1 Introduction Type classes were introduced by Wadler and Blott [8] into the Haskell lan- guage to allow for a reasonable implementation of overloading1. As a canon- ical example, a polymorphic equality function eq :: α ) α ) bool which is overloaded on different types for α, which is achieved by splitting introduc- tion of the eq function from its overloaded definitions by means of class and instance declarations: 2 class eq where eq :: α ) α ) bool instance nat :: eq where eq 0 0 = True eq 0 - = False eq - 0 = False eq (Suc n)(Suc m) = eq n m instance (α::eq; β::eq) pair :: eq where eq (x1; y1) (x2; y2) = eq x1 x2 ^ eq y1 y2 class ord extends eq where less-eq :: α ) α ) bool less :: α ) α ) bool Type variables are annotated with (finitely many) classes; these annotations are assertions that a particular polymorphic type provides definitions for overloaded functions. Indeed, type classes not only allow for simple overloading but form a generic calculus, an instance of order-sorted algebra [5, 6, 10]. From a software engineering point of view, type classes roughly correspond to interfaces in object-oriented languages like Java; so, it is naturally desirable that type classes do not only provide functions (class parameters) but also state specifications implementations must obey.
    [Show full text]
  • OMG Meta Object Facility (MOF) Core Specification
    Date : October 2019 OMG Meta Object Facility (MOF) Core Specification Version 2.5.1 OMG Document Number: formal/2019-10-01 Standard document URL: https://www.omg.org/spec/MOF/2.5.1 Normative Machine-Readable Files: https://www.omg.org/spec/MOF/20131001/MOF.xmi Informative Machine-Readable Files: https://www.omg.org/spec/MOF/20131001/CMOFConstraints.ocl https://www.omg.org/spec/MOF/20131001/EMOFConstraints.ocl Copyright © 2003, Adaptive Copyright © 2003, Ceira Technologies, Inc. Copyright © 2003, Compuware Corporation Copyright © 2003, Data Access Technologies, Inc. Copyright © 2003, DSTC Copyright © 2003, Gentleware Copyright © 2003, Hewlett-Packard Copyright © 2003, International Business Machines Copyright © 2003, IONA Copyright © 2003, MetaMatrix Copyright © 2015, Object Management Group Copyright © 2003, Softeam Copyright © 2003, SUN Copyright © 2003, Telelogic AB Copyright © 2003, Unisys USE OF SPECIFICATION - TERMS, CONDITIONS & NOTICES The material in this document details an Object Management Group specification in accordance with the terms, conditions and notices set forth below. This document does not represent a commitment to implement any portion of this specification in any company's products. The information contained in this document is subject to change without notice. LICENSES The companies listed above have granted to the Object Management Group, Inc. (OMG) a nonexclusive, royalty-free, paid up, worldwide license to copy and distribute this document and to modify this document and distribute copies of the modified version. Each of the copyright holders listed above has agreed that no person shall be deemed to have infringed the copyright in the included material of any such copyright holder by reason of having used the specification set forth herein or having conformed any computer software to the specification.
    [Show full text]
  • Metaclasses 4 ◆ Dynamic Binding Implies That Classes Must Have Some ◆ Meta-: Beyond; Transcending; More Comprehensive; E.G., As Memory Representation
    ® 1 ® Class Representation in Memory? 2 Case Study: Meta Classes ◆ A class is an abstract entity, so why should it be represented in the runtime environment? ◆ Answer: Dynamic Binding! ◆ Class representation in memory ● The actual method bound to a message is determined at run time based on the type (class) of an object. ◆ Class variables and class methods ● There must be a link between the object and its ◆ Meta Classes methods. ● Since these links are the same for all objects of the ◆ 3 Level System same class, it makes sense to share the representation. ◆ ◆ 4 Level System Schematic diagram, common to all OO languages: Method ◆ 5 Level System 1 Method ◆ 1 Level System Class Rep 2 ◆ Msg Object Methods Infinite Levels System Table Methodn oop Õ Ö oop Õ Ö ® A Class as an Object? 3 ® Metaclasses 4 ◆ Dynamic binding implies that classes must have some ◆ Meta-: Beyond; transcending; more comprehensive; e.g., as memory representation. in metalinguistics. ◆ Why not as an object? ◆ Class: generates instances. ◆ Answer: Let's go for it! ◆ Metaclass: a class whose instances are classes. ● Each object o has a pointer to its class object c which is the ◆ Terminal Instance: cannot be instantiated further. object representing the class to which o belongs. Objects Class Classes Terminal Instances Novel Play Instantiable objects Non instantiable objects Macbeth Othello Metaclasses Instances are classes 1984 War & Peace As you like Main Text Book Reference: G.Masini et al. Oliver Twist Object-Oriented Languages, APIC series, No.34 oop Õ Ö oop Õ Ö ® 5 ® 6 Taxonomy of Metaclass Systems The 3 Level System ◆ 1-Level System: Objects only Object ● Each object describes itself INSTANCE _OF ● No need for classes: objects are ìinstantiatedî or ìinheritedî from SUBCLASS _OF other objects Class Example: Self VARIABLES instance_of ,167$1&(B2) ◆ 2-Level System: Objects, Classes METHODS ..
    [Show full text]
  • IBM Infosphere
    Software Steve Mills Senior Vice President and Group Executive Software Group Software Performance A Decade of Growth Revenue + $3.2B Grew revenue 1.7X and profit 2.9X + $5.6B expanding margins 13 points $18.2B$18.2B $21.4B$21.4B #1 Middleware Market Leader * $12.6B$12.6B Increased Key Branded Middleware 2000 2006 2009 from 38% to 59% of Software revenues Acquired 60+ companies Pre-Tax Income 34% Increased number of development labs Margin globally from 15 to 42 27% 7 pts Margin 2010 Roadmap Performance Segment PTI Growth Model 12% - 15% $8.1B$8.1B 21% 6 pts • Grew PTI to $8B at a 14% CGR Margin • Expanded PTI Margin by 7 points $5.5B$5.5B $2.8B$2.8B ’00–’06’00–’06 ’06–’09’06–’09 Launched high growth initiatives CGRCGR CGRCGR 12%12% 14%14% • Smarter Planet solutions 2000 2006 2009 • Business Analytics & Optimization GAAP View © 2010 International Business Machines Corporation * Source: IBM Market Insights 04/20/10 Software Will Help Deliver IBM’s 2015 Roadmap IBM Roadmap to 2015 Base Growth Future Operating Portfolio Revenue Acquisitions Leverage Mix Growth Initiatives Continue to drive growth and share gain Accelerate shift to higher value middleware Capitalize on market opportunity * business • Middleware opportunity growth of 5% CGR Invest for growth – High growth products growing 2X faster than rest of • Developer population = 33K middleware Extend Global Reach – Growth markets growing 2X faster than major markets • 42 global development labs with skills in 31 – BAO opportunity growth of 7% countries Acquisitions to extend
    [Show full text]
  • Xerox University Microfilms
    INFORMATION TO USERS This material was produced from a microfilm copy of the original document. While the most advanced technological means to photograph and reproduce this document have been used, the quality is heavily dependent upon the quality of the original submitted. The following explanation of techniques is provided to help you understand markings or patterns which may appear on this reproduction. 1.The sign or "target" for pages apparently lacking from the document photographed is "Missing Page(s}". If it was possible to obtain the missing page(s) or section, they are spliced into the film along with adjacent pages, This may have necessitated cutting thru an image and duplicating adjacent pages to insure you complete continuity. 2. When an image on the film is obliterated with a targe round black mark, it is an indication that the photographer suspected that the copy may have moved during exposure and thus cause a blurred image. You will find a good image of the page in the adjacent frame. 3. When a map, drawing or chart, etc., was part of the material being photographed the photographer followed a definite method in "sectioning" the material. It is customary to begin photoing at the upper left hand corner of a large sheet and to continue photoing from left to right in equal sections with a small overlap. If necessary, sectioning is continued again — beginning below the first row and continuing on until complete. 4. The majority of users indicate that the textual content is of greatest value, however, a somewhat higher quality reproduction could be made from "photographs" if essential to the understanding of the dissertation.
    [Show full text]
  • Fy11 Education Masterfile 10262010
    Page 1 FY10 CONTRACT #GS-35F-4984H Effective Date October 26, 2010 IBM Education Charge GSA GSA GSA DAYS PUBLIC PRIVATE ADD'L ST. STUDENTS 3A230 Exploring IBM solidDB Universal Cache - Instructor-led online 4.0 2,305 14,186 222 15 3L121 Query XML data with DB2 9 - Instructor-led online 3.0 1,729 10,640 222 15 3L131 Query and Manage XML Data with DB2 9 - Instructor-led online 5.0 2,882 17,733 222 15 3L141 Manage XML data with DB2 9 -Instructor-led online 2.0 1,153 7,093 222 15 3L282 Fast Path to DB2 9 for Experienced Relational DBAs - Instructor-led online 2.0 1,153 7,093 222 15 3L2X1 DB2 9 Administration Workshop for Linux, UNIX, and Windows Instructor Led OnLine4.0 2,305 14,186 222 15 3L2X2 DB2 9 Database Administration Workshop for Linux,UNIX and Windows - ILO 4.0 2,305 14,186 222 15 3L482 DB2 9 for Linux,UNIX and Windows Quickstart for Experienced Relational DBAs-ILO4.0 2,305 14,186 222 15 3L711 DB2 Stored Procedures Programming Workshop - Instructor-led online 2.0 1,153 7,093 222 15 3N230 Exploring IBM solidDB Universal Cache - Flex Instructor Led Online 5.0 2,305 14,186 222 15 3N312 DB2 9.7 for Linux, UNIX, and Windows New Features - Flex Instructor-led online2.0 864 5,320 222 15 3V410 DB2 9 for z/OS Data Sharing Implementation - Instructor Led Online 3.0 1,729 10,640 222 15 3V420 DB2 9 for z/OS Data Sharing Recovery and Restart - Instructor Led Online 2.0 1,153 7,093 222 15 3W700 Basic InfoSphere Streams SPADE programming Instructor-led Online 2.0 1,153 7,093 222 15 3W710 Advanced InfoSphere Streams SPADE Programming Instructor-led
    [Show full text]