|
|
- Emory McLaughlin
- 8 years ago
- Views:
Transcription
1 ProgramVerificationandHardwareSynthesis 1 ProgramVerication HardwareSynthesis and Acommonapproachtohardwaredesignisto writeaprograminahardwaredescription languageandthencompileittoastatemachine usingasynthesissystem.somecorrectness programminglevelandestablishedbyprogram propertiesarenaturallyexpressedatthe intermsofthestatetransitionsofthesynthesised vericationmethods,butothersarebestspecied properties,andthendiscusshowtheycanbecan machine.iwillgiveexamplesofbothkindsof beveriedusingatheorem-prover. Thistalkisintendedforageneralaudience. MikeGordon
2 ProgramVerificationandHardwareSynthesis 2 (FromKurtKeutzer'spaperinFMCAD'96) SynthesisDesignFlow MikeGordon
3 ProgramVerificationandHardwareSynthesis 3 RegisterTransferLevel CurrentlyRTListhe`workhorse'level {lowerlevelsforeeexperts TwoviewsofRTL: {higherlevelsstillexperimental {programming(hdl) Specicationandvericationneededwith {statemachine(structure) respecttobothviews {programvericationforsomeproperties {statespaceanalysisforothers MikeGordon
4 ProgramVerificationandHardwareSynthesis 4 Verication Traditionalvericationusessimulation {eventsimulation Formalvericationusesautomatedproof {cyclesimulation {booleanequivalencechecking usesobddsetc {modelchecking nowstandard checkspropertiesofstatemachines {theoremproving currentlyusedbyintel,ti,hpetc usespowerfulundecidablelogics longtermpromise Reasonsforformalverication stillaresearcharea {commercial:betterdebugging {safetycritical:savelives {securitycritical:ensureprivacy/secrecy MikeGordon
5 ProgramVerificationandHardwareSynthesis 5 RestofTalk MainlyRTLVerication Combine: {ideasrelevanttobehaviouralleveltoo {programverication HDLsemantics {statemachineanalysis Discussionofneededtheoremproversupport {basedonsimplehardwaresynthesis SomerelatedcurrentresearchatCambridge {methodology,notdetails MikeGordon
6 ProgramVerificationandHardwareSynthesis 6 ProgramSpecication Hoaretriples: fpreconditiongprogramfpostconditiong Semantics(totalcorrectness): {ifthepreconditionholds {thentheprogramterminates Example:asimpledivisionprogram {inastateinwhichthepostconditionholds (XdividedbyYgivesquotientQ&remainderR) fy>0g beginr=x;q=0; while(y<r) (precondition) begin end Q=Q+1; R=R-Y; fx=r+yq^r<yg end (postcondition) MikeGordon
7 ProgramVerificationandHardwareSynthesis 7 ProgramLogic MuchknowledgeaboutverifyingHoaretriples {establishinginvariants {terminationvia`variants' Standard {weakestpreconditions {taughttoundergraduates Nicetomechanise {textbooks {vericationconditions MikeGordon
8 ProgramVerificationandHardwareSynthesis 8 HardwareversusProgram Continuouslyrunning Calculationsmayspreadoverseveralcycles { always<statement> Needinput/outputprotocol, variouspossibilities: {tri-statebus {handshake,e.g: tostartassertstart=1 deviceavailablewhenbusy=0 resultsonqandrwhennextbusy=0 MikeGordon
9 ProgramVerificationandHardwareSynthesis 9 DivisionProgram+I/O always@clock if(start) begin R=X;Q=0; BUSY=1; X=In1;Y=In2; while(y<r) begin R=R-Y; end BUSY=0; end Start,Inp1,Inp2controlledbyenvironment X,Y,Q,R,BUSYcontrolledbyprogram deviceavailablewhenbusy=0 (initially0) tostartcomputationassertstart=1 resultsonqandrwhennextbusy=0 MikeGordon
10 ProgramVerificationandHardwareSynthesis 10 Control+Data HDLprogramspeciesamachine: MDIV def if(start) begin BUSY=1; X=In1;Y=In2; SDIV end BUSY=0; thatcontainsanembeddedprogram: SDIV def = while(y<r) R=X;Q=0; end R=R-Y; Q=Q+1; MikeGordon
11 ProgramVerificationandHardwareSynthesis 11 SpecifyingPropertiesofMachines Machinesdeterminesequencesofstates EnvironmentprovidesvaluesforIn1,In2 {oneforeachcycle Readinputs&updatestateeveryclocktick Variablesrangeoversequencesofvalues (RTLbehaviour) propertiesofsequences Temporaloperatorsspecify 2(Y>0) 3(X=R+(YQ)) valueofyalwaysgreaterthan0 sometimexwillequalr+(yq) ifbusy=1thensometimelaterbusy=0 2(BUSY=1) 3(BUSY=0)) MikeGordon
12 ProgramVerificationandHardwareSynthesis 12 CorrectnessofHDLDivider Needtoshow: IfStartisassertedwhenBUSY=0then: {Inp1andInp2readduringthatcycle {eventuallybusybecomes0again Cansplittheseinto: { X=R+YQ^R<YwhennextBUSY=0 { programcorrectness(hoarelogic) fy>0g fx=r+yq^r<yg SDIV {controlcorrectness(temporallogic): BUSY=1,controlinsideSDIV and 2(BUSY=1) 3(BUSY=0)) MikeGordon
13 ProgramVerificationandHardwareSynthesis 13 MakingCyclesExplicit WithrespecttoanHDLprogram: if(start) begin BUSY=1; X=In1;Y=In2; SDIV end BUSY=0; HowdoweinterpretHoaretriples: fy>0gsdivfx=r+yq^r<yg andtemporalformulas 2(BUSY=1) BUSY=1,controlinsideSDIV 3(BUSY=0)) Answer: converthdltoastatemachine MikeGordon theninterpretw.r.t.input/statesequences
14 ProgramVerificationandHardwareSynthesis 14 SynthesisSemantics HDLsemantics=translationtomachine Denitionalsynthesis {notoptimisedimplementation! {c.f.denitionalinterpretersfor Doesn'trevealIPofproprietarytools programminglanguages {approachbeingusedtodenesemanticsof {i.e.`synopsyssubset' synthesisableverilog Engineerfriendly (Synopsysarehelping) MikeGordon
15 ProgramVerificationandHardwareSynthesis 15 CompilingtoStateMachines Introducea`programcounter'pc {intialisedto0 {encodescontrolstate Symbolicallyexecute Example begin X=Inp; (State0) X=X+1; (State1) compilesto(usingverilog-likenotation) case(pc) endcase 0: 1: pc=1kx=inp pc=0kx=x+1(parallelassignment) MikeGordon
16 ProgramVerificationandHardwareSynthesis 16 AnotherSequencingExample begin X=Inp1;Y=X+Inp2; (State0) OUT=X+Y; (State1) compilesto case(pc) 0: X =1 1: Y OUT=OUT pc =Inp1+Inp2 X =X =0 endcase k OUT=X+Y Y =Y MikeGordon
17 ProgramVerificationandHardwareSynthesis 17 ConditionalExample begin if(choose)x=in1;elsex=in2; (State0) end (State1) compilesto case(pc) 0: =Choose?In1:In2 =1 1: X OUT=OUT pc =0 endcase k OUT=X+1 MikeGordon
18 ProgramVerificationandHardwareSynthesis 18 WhileExample:divider if(start) beginx=in1;y=in2;busy=1; (State0) while(y<r) R=X;Q=0; R=R-Y;Q=Q+1; (State1) end compilesto end BUSY=0; case(pc) 0: pc=start?in2<in1?1:0:0 X=Start?In1:X Y=Start?In2:Y R=Start?In1:R 1: pc=y<(r-y)?1:0 BUSY=Start?In2<In1?1:0:BUSY Q=Start?0:Q X=X Y=Y R=R-Y endcase k Q=Q+1 BUSY=Y<(R-Y)?BUSY:0 BUSY=1,controlinsideSDIV cannowbeinterpretedas MikeGordon 2(BUSY=1, pc=1)
19 ProgramVerificationandHardwareSynthesis 19 Divider+morestates if(start) beginx=in1;y=in2; (State0) R=X;Q=0; (State1) while(y<r) begin R=R-Y; (State3) end Q=Q+1; (State4) end BUSY=0; Allocatingoperationstostatesis Functionalspecicationunchangedby behaviouralsynthesis additionalstates MikeGordon
20 ProgramVerificationandHardwareSynthesis 20 CorrespondingMachine case(pc) 0: X=Start?In1:X Y=Start?In2:Y pc=start?1:0 1: R=RkQ=Q pc=2 X=XkY=Y BUSY=Start?1:BUSY R=X 2: Q=0 X=XkY=YkR=RkQ=Q pc=y<r?3:0 BUSY=BUSY 3: BUSY=Y<R?BUSY:0 pc=4 X=XkY=Y R=R-Y 4: Q=Q X=XkY=YkR=R pc=y<r?3:0 BUSY=BUSY endcase k Q=Q+1 BUSY=Y<R?BUSY:0 BUSY=1,controlinsideSDIV cannowbeinterpretedas 2(BUSY=1, pc2f1;2;3;4g) MikeGordon
21 ProgramVerificationandHardwareSynthesis 21 ProgramProof+StateExploration Dataprocessingvericationvia ordinaryprogramlogic {mayrequirehumanguidedreasoning Controlcorrectnessviastatespaceof (e.g.guessinginvariants) synthesisedmachine {oftenautomatic(c.f.modelchecking) verication design = verication program + analysis machine MikeGordon
22 ProgramVerificationandHardwareSynthesis 22 HoareLogicasTemporalLogic Hoaretriplescanbeinterpretedonmachine behaviours {roughly fpgsfqg is: Hoare-stylereasoningprinciplesderivable 2(P^pc2S)pc2SUntilQ^:pc2S) {forideas(appliedtoreal-time)see: M.J.C.Gordon,AmechanizedHoare Mind,FestschriftforProfessorC.A.R. logicofstatetransitions,inaclassical HoareeditedbyRoscoe,W., {forrtlhardwareseelecturenotesonweb Prentice-Hall,1994,pp MikeGordon
23 ProgramVerificationandHardwareSynthesis 23 TowerofSemanticAbstraction Everythingcanbereducedtopurelogic HoareTriple fpgsfqg 2(P^pc2S)pc2SUntilQ^:pc2S) TemporalLogic 8t:P(t)^pc(t)2S) RawLogic 9t0:t0>t^Q(t0)^:pc(t0)2S^ (8t00:t<t00^t00<t0)pc(t00)2S) PUntilQ meansqwilleventuallyholdtrue anduntilitdoespholds MikeGordon
24 ProgramVerificationandHardwareSynthesis 24 HandlingMultipleDescriptions Needtorepresent {Hoaretriples {temporalformulas&statemachines {vericationconditions (couldinvolvecomplexarithmetic Needageneralpurposeformalism orevenrealanalysis{e.g.fp,dsp) {suitablefor`arbitrarymathematics' Severalgeneralsystemsexist {mechanizable {settheory {classicalhigherorderlogic (Isabelle/ZF,HOL-ST) {constructivetypetheory (PVS,HOL,Isabelle/HOL,IMPS) (Nuprl,Lego,Coq,Alf) MikeGordon
25 ProgramVerificationandHardwareSynthesis 25 PragmaticRequirements Combinegeneralframeworkwith`best Manydecisionproceduresknown practice'specialisedtools (hotresearcharea:cavetc.) {tautologies {lineararithmetic Partialdecisionprocedurescanoftenhandle {temporalproperties simplevericationconditions(cade) {inductiveproofs(boyer-moore,clam) {tableaumethods MikeGordon
26 ProgramVerificationandHardwareSynthesis 26 ExistingApproachestoIntegration Add`trusted'externaloraclestogeneral proofsystem {OBDDandmodelcheckersforPVS {arithmeticdecisionprocedurestoisabelle Features: {LTLinHOL(Karlsruhe) {getstate-of-the-arteciency {onlyassoundastheoracle Ecientderivedrules {lowintegrationwithothertools {tableauproversinisabelle&hol Features: {lineararithmeticinhol {guaranteedsound {inecient(notasbadassomesay) {highintegrationwithothertools MikeGordon
27 ProgramVerificationandHardwareSynthesis 27 (PROSPER) NewProject Attempttohaveourcakeandeatit {generalpurposesystem {cleanintegrationwithexternaloracles {supportforspecicapplications Approach {theoremprovenancetracking {startby`deconstructing'hol98 theorydatabase rewritingengine {deviseprotocolforexternaltools decisionproceduresandprovers interactiveshell Experiments: (maybeusexmltospecifydataformats) {linktosmvmodelchecker {linktonpprovertautologychecker Vapourware! {supportverilogandvhdl {butstrongteam::: (Cambridge,Glasgow,Karlsruhe,IFAD,NP) MikeGordon
28 ProgramVerificationandHardwareSynthesis 28 GrandLong-TermGoals Useindustry-standardsyntax Developdierentsemanticviews {Verilog,VHDL,::: {familiartoengineers {compatiblewithstandarddesign& {mutuallyconsistent vericationows Providesemanticallycompatibletools {compilers,simulators,veriersetc. MikeGordon
29 ProgramVerificationandHardwareSynthesis 29 OngoingResearchatCambridge SemanticsofsynthesisableVerilog (withabhijitghoshofsynopsys) {industrialstrengthsubset {simulation(event)semantics {state-machine(cycle)semantics {analysisofsyntacticconditionsfor {semanticsbasedtools eventandcyclesemanticstoagree SimulationcoreforVHDLandVerilog {commonsimulationcycle {rigorouslyspeciedandanalysed {applicationtoomi Hardwarecompilationworkbench {juststarted(darylstewart'sphd) {basedaroundianpage'shandellanguage {implementdesignmanipulationtools {comparehandel,verilogdesignows {postdoc:myravaninwegen MikeGordon
30 ProgramVerificationandHardwareSynthesis 30 Conclusion Needdiversekindsofspecications Needdiversevericationtools {fordierentabstractionlevels {specialisedalgorithms Canembedspecicationsinpowerfullogics {generaltheorem-proving {givesuniedframework Softwarevericationmethodsusefulfor {buthardtopreserveeciency hardware {hardwareandsoftwaretheoriesmerging MikeGordon
31 ProgramVerificationandHardwareSynthesis 31 THE END MikeGordon
UML TUTORIALS THE COMPONENT MODEL
UML TUTORIALS THE COMPONENT MODEL www.sparxsystems.com.au Sparx Systems 2004 Page 1/5 The component model illustrates the software components that will be used to build the system. These may be built up
More informationUML TUTORIALS THE USE CASE MODEL
UML TUTORIALS THE USE CASE MODEL www.sparxsystems.com.au Sparx Systems 2004 Page 1/5 describes the proposed functionality of the new system. A Use Case represents a discrete unit of interaction between
More informationHardware and Software
Hardware and Software 1 Hardware and Software: A complete design Hardware and software support each other Sometimes it is necessary to shift functions from software to hardware or the other way around
More informationReal-TimeVericationofStatemateDesigns. applicationsraisesthedemandforprovingtheircorrectness.becauseverication
Real-TimeVericationofStatemateDesigns vericationofstatemate1designs.statemateisawidelyuseddesign Abstract.Thispaperpresentsanapproachtowardsreal-time toolforembeddedcontrolunits.theseembeddedcontrolunitsare
More informationExperienceUsingtheJILProcessProgrammingLanguage tospecifydesignprocesses StanleyM.SuttonJr.,BarbaraStaudtLerner,andLeonJ.Osterweil ComputerScienceDepartment UniversityofMassachusetts Amherst,Massachusetts01003
More informationAutomatic Assessment of Programming assignment
Automatic Assessment of Programming assignment Surendra Gupta 1 and Shiv Kumar Dubey 2 Department of Computer Engineering Shri G. S. Institute of Technology & Science 23, Park Road Indore 452003 (MP) India
More informationEmbedded Software development Process and Tools: Lesson-3 Host and Target Machines
Embedded Software development Process and Tools: Lesson-3 Host and Target Machines 1 1. Host-Target Based Development Approach 2 Host-Target System Development Approach During development process, a host
More informationTopics covered. An Introduction to Software Engineering. FAQs about software engineering Professional and ethical responsibility
An Introduction to Software Engineering Antinisca Di Marco adimarco@di.univaq.it Objectives To introduce software engineering and to explain its importance To set out the answers to key questions about
More informationPAN Virtual Machine User Guide for Software Submissions
PAN Virtual Machine User Guide for Software Submissions 1 Welcome Welcome to the PAN evaluation lab. PAN ist the first lab to switch from the submission of runs (say, the output of a piece of software)
More informationCS423 Spring 2015 MP4: Dynamic Load Balancer Due April 27 th at 9:00 am 2015
CS423 Spring 2015 MP4: Dynamic Load Balancer Due April 27 th at 9:00 am 2015 1. Goals and Overview 1. In this MP you will design a Dynamic Load Balancer architecture for a Distributed System 2. You will
More informationSoftware Testing & Verification 2013/2014 Universiteit Utrecht
Software Testing & Verification 2013/2014 Universiteit Utrecht 2nd Jul. 2014, 13:30-16:30, BBL 001 Lecturer: Wishnu Prasetya You are allowed to bring along the Appendix of the LN. Part I [3pt (6 0.5)]
More informationRigorous Software Development CSCI-GA 3033-009
Rigorous Software Development CSCI-GA 3033-009 Instructor: Thomas Wies Spring 2013 Lecture 11 Semantics of Programming Languages Denotational Semantics Meaning of a program is defined as the mathematical
More informationAddressing The problem. When & Where do we encounter Data? The concept of addressing data' in computations. The implications for our machine design(s)
Addressing The problem Objectives:- When & Where do we encounter Data? The concept of addressing data' in computations The implications for our machine design(s) Introducing the stack-machine concept Slide
More informationThe Temporal Firewall--A Standardized Interface in the Time-Triggered Architecture
1 The Temporal Firewall--A Standardized Interface in the Time-Triggered Architecture H. Kopetz TU Vienna, Austria July 2000 Outline 2 Introduction Temporal Accuracy of RT Information The Time-Triggered
More informationActive Directory (AD) Self-Service
Active Directory (AD) Self-Service TETRA IT has implemented a way for you to: 1. Set-Up/Maintain AD Contact Information (Use this option to create an AD Self-Serve Account and/or Maintain your AD Contact
More informationSofware Requirements Engineeing
Sofware Requirements Engineeing Three main tasks in RE: 1 Elicit find out what the customers really want. Identify stakeholders, their goals and viewpoints. 2 Document write it down (). Understandable
More informationIntroduction to Software Engineering. Adopted from Software Engineering, by Ian Sommerville
Introduction to Software Engineering Adopted from Software Engineering, by Ian Sommerville To discuss the factors that led to software failures and the phenomenon of the Software Crisis ; To introduce
More informationLecture 8 February 4
ICS273A: Machine Learning Winter 2008 Lecture 8 February 4 Scribe: Carlos Agell (Student) Lecturer: Deva Ramanan 8.1 Neural Nets 8.1.1 Logistic Regression Recall the logistic function: g(x) = 1 1 + e θt
More informationAdminToys Suite. Installation & Setup Guide
AdminToys Suite Installation & Setup Guide Copyright 2008-2009 Lovelysoft. All Rights Reserved. Information in this document is subject to change without prior notice. Certain names of program products
More informationRN-131-PICTAIL & RN-171-PICTAIL Web-Server Demo Application
RN-131-PICTAIL & RN-171-PICTAIL Web-Server Demo Application 2012 Roving Networks. All rights reserved. RN-131/171-PICTAIL-UM Version 1.0 1/8/2013 OVERVIEW The RN-131 and RN-171 WiFly radio modules are
More informationInstalling NICE Windows under Parallels for Mac
Installing NICE Windows under Parallels for Mac 1. Prerequisites a) A Mac with OS X connected to a portable socket on the CERN general public network b) Parallels Desktop software installed from: smb://cerndata44.cern.ch/d
More informationComputer organization
Computer organization Computer design an application of digital logic design procedures Computer = processing unit + memory system Processing unit = control + datapath Control = finite state machine inputs
More informationSTUDENT TAKE HOME EXAMINATION SYSTEM (THES) INSTRUCTIONS.
Information and Technology Services Department Help Desk http://www.law.nyu.edu/technology STUDENT TAKE HOME EXAMINATION SYSTEM (THES) INSTRUCTIONS. What Is THES THES is the Law School s Take Home Exam
More informationAdvances in Programming Languages
Advances in Programming Languages Lecture 13: Certifying Correctness Ian Stark School of Informatics The University of Edinburgh Tuesday 4 November 2014 Semester 1 Week 8 http://www.inf.ed.ac.uk/teaching/courses/apl
More informationBinary Multiplication
Binary Multiplication Q: How do we multiply two numbers? eg. 12, 345 6, 789 111105 987600 8641500 + 74070000 83, 810, 205 10111 10101 10111 00000 1011100 0000000 + 101110000 111100011 Pad, multiply and
More informationArea 3: Analog and Digital Electronics. D.A. Johns
Area 3: Analog and Digital Electronics D.A. Johns 1 1970 2012 Tech Advancements Everything but Electronics: Roughly factor of 2 improvement Cars and airplanes: 70% more fuel efficient Materials: up to
More informationLearning about money doesn t have to be boring. Instead, it can be a crazy, wild, exciting adventure!
W W, M Ex A! L. I,,, x! H? I. B,,,! B x? I! - O, I x. H q : W? H I? H I? H I? H I? W.? W? W? H I? L A! I ACE, P A G! D, I. I. 1 W? FORMS OF MONEY D,? I,. I, x,,. B, x. O, x. I U S,. W,. D C 0000 0000 0000
More information1. Component#2 File Management System
1. Component#2 File Management System 1.1 Part1: Use case diagram Figure 1 illustrates the use case diagram of File Management System. Figure 1:File Management user case diagram File Manager BackgroundAdmonistrator
More informationT-79.232 Safety Critical Systems Case Study 2: B Method - Basic Concepts
T-79.232 Safety Critical Systems Case Study 2: B Method - Basic Concepts February 21, 2008 T-79.5303: Case Study 2: B Method - Basic Concepts 2-1 B method - what is it about? B method describes entities
More informationENEE 244 (01**). Spring 2006. Homework 5. Due back in class on Friday, April 28.
ENEE 244 (01**). Spring 2006 Homework 5 Due back in class on Friday, April 28. 1. Fill up the function table (truth table) for the following latch. How is this latch related to those described in the lectures
More information799 000 678 / Rev. 0 / 2013-03-26. Quick Guide for FDT Basic-Tool and Backup-Tool P40-SERIES
799 000 678 / Rev. 0 / 2013-03-26 Quick Guide for FDT Basic-Tool and Backup-Tool P40-SERIES Publisher ELGO Electronic GmbH & Co. KG Carl-Benz-Straße1 DE-78239 Rielasingen Technical Support +49 (0) 7731
More information4.4 What is a Requirement? 4.5 Types of Requirements. Functional Requirements
4.4 What is a Requirement? It is a statement describing either 1) an aspect of what the proposed system must do, or 2) a constraint on the system s development. In either case it must contribute in some
More informationIntroduction. Getting started with software engineering. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 1 Slide 1
Introduction Getting started with software engineering Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 1 Slide 1 Objectives To introduce software engineering and to explain its importance
More informationWESTMORELAND COUNTY PUBLIC SCHOOLS 2011 2012 Integrated Instructional Pacing Guide and Checklist Computer Math
Textbook Correlation WESTMORELAND COUNTY PUBLIC SCHOOLS 2011 2012 Integrated Instructional Pacing Guide and Checklist Computer Math Following Directions Unit FIRST QUARTER AND SECOND QUARTER Logic Unit
More informationAn Introduction to Software Engineering
An Introduction to Software Engineering Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 1 Objectives To introduce software engineering and to explain its importance To set out the
More informationAn Introduction to Software Engineering. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 1
An Introduction to Software Engineering Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 1 Objectives To introduce software engineering and to explain its importance To set out the
More informationCapacity Planning for NightWatchman Management Center
Capacity Planning for NightWatchman Management Center Server sizing guide for NightWatchman Management Center www.1e.com i Version 6.0 document revision 1 1E Ltd 2011 All rights reserved. No part of this
More informationManagement Accounting Fundamentals
Management Accounting Fundamentals Module 4 Cost behaviour and cost-volume-profit analysis Lectures and handouts by: Shirley Mauger, HB Comm, CGA Part 1 2 3 Module 4 - Table of Contents Content 4.1 Variable
More informationUnit testing using Python nose
Unit testing using Python nose Luis Pedro Coelho On the web: http://luispedro.org On twitter: @luispedrocoelho European Molecular Biology Laboratory June 11, 2014 Luis Pedro Coelho (luis@luispedro.org)
More informationTerminal Server Software and Hardware Requirements. Terminal Server. Software and Hardware Requirements. Datacolor Match Pigment Datacolor Tools
Terminal Server Software and Hardware Requirements Datacolor Match Pigment Datacolor Tools January 21, 2011 Page 1 of 8 Introduction This document will provide preliminary information about the both the
More information7.1 Our Current Model
Chapter 7 The Stack In this chapter we examine what is arguably the most important abstract data type in computer science, the stack. We will see that the stack ADT and its implementation are very simple.
More informationWelcome! Upgrade Paths and Requirements for v13.0 & v13.1 3/22/2014. McKesson Corporation. All rights reserved, 1
Welcome! Please remember to turn off your cell phone. When asking a question, please wait for a facilitator to bring you a microphone. Remember to return your session survey to a facilitator as you leave.
More informationCapacity Plan. Template. Version X.x October 11, 2012
Template Version X.x October 11, 2012 This is an integral part of infrastructure and deployment planning. It supports the goal of optimum provisioning of resources and services by aligning them to business
More informationCOISTE GAIRMOIDEACHAIS CHATHAIR CHORCAI CITY OF CORK VOCATIONAL EDUCATION COMMITTEE
A. GENERAL INFORMATION The purpose of this section is show Users the screens which will display when in the following screens: Core Portal ESS Public Page (where users log on) Core Portal Main Page My
More informationAmplicon Core i5/i7 Ventrix and Impact-R new Systems
Amplicon Core i5/i7 Ventrix and Impact-R new Systems Tél: 04 37 28 30 34 Fax: 04 37 28 30 39 Email: ventes@ampliconfrance.com What s New? Intel Processor Core i5 / i7 equipped upgrades to Ventrix, Impact-R
More informationXXXXXXX CHANGE PLAN JANUARY 2012-MARCH 2013
XXXXXXX CHANGE PLAN JANUARY 2012-MARCH 2013 Change Implementation Plan What are my answers to these questions? Change Management Road Map (questions to ask, answers to investigate) What are my options?
More informationPRI (T1/E1) Call Recorder User Manual Rev 1.0 (December 2013)
PRI (T1/E1) Call Recorder User Manual Rev 1.0 (December 2013) 1. Call Recording Architecture Overview PRI Call recording solution consists of two major components: Passive T1/E1 Tap Adapter and server
More informationInclusionConstraintsover MartinMuller1,JoachimNiehren1andAndreasPodelski2 Non-emptySetsofTrees? UniversitatdesSaarlandes,66041Saarbrucken,Germany ImStadtwald,66123Saarbrucken,Germany 2Max-Planck-InstitutfurInformatik,
More informationIn this section, we will consider techniques for solving problems of this type.
Constrained optimisation roblems in economics typically involve maximising some quantity, such as utility or profit, subject to a constraint for example income. We shall therefore need techniques for solving
More informationWhat do we mean by web hosting?
From time to time we have requests from customers to host Kontrolit on their own servers. This document helps explain the advantages of using Kontrolit hosting and why we have decided to take the route
More informationDecimal Number (base 10) Binary Number (base 2)
LECTURE 5. BINARY COUNTER Before starting with counters there is some vital information that needs to be understood. The most important is the fact that since the outputs of a digital chip can only be
More informationAims and Objectives. E 3.05 Digital System Design. Course Syllabus. Course Syllabus (1) Programmable Logic
Aims and Objectives E 3.05 Digital System Design Peter Cheung Department of Electrical & Electronic Engineering Imperial College London URL: www.ee.ic.ac.uk/pcheung/ E-mail: p.cheung@ic.ac.uk How to go
More informationTechnical Writing - A Practical Case Study on ehl 2004r3 Scalability testing
ehl 2004r3 Scalability Whitepaper Published: 10/11/2005 Version: 1.1 Table of Contents Executive Summary... 3 Introduction... 4 Test setup and Methodology... 5 Automated tests... 5 Database... 5 Methodology...
More informationOfficeMaster SBA (Survivable Branch Appliance)
OfficeMaster SBA (Survivable Branch Appliance) Resilient branch office solution for Microsoft Lync Server 2010 December 2010 Based on Lync RTM (4.0.7577.0) Please send feedback on this documentation to
More informationModule 3: Floyd, Digital Fundamental
Module 3: Lecturer : Yongsheng Gao Room : Tech - 3.25 Email : yongsheng.gao@griffith.edu.au Structure : 6 lectures 1 Tutorial Assessment: 1 Laboratory (5%) 1 Test (20%) Textbook : Floyd, Digital Fundamental
More informationCompliance ow - managing the compliance of dynamic and complex processes
Loughborough University Institutional Repository Compliance ow - managing the compliance of dynamic and complex processes This item was submitted to Loughborough University's Institutional Repository by
More informationKirsten Sinclair SyntheSys Systems Engineers
Kirsten Sinclair SyntheSys Systems Engineers Kirsten Sinclair SyntheSys Systems Engineers Spicing-up IBM s Enterprise Architecture tools with Petri Nets On Today s Menu Appetiser: Background Starter: Use
More informationSoftware Engineering. What is SE, Anyway? Based on Software Engineering, 7 th Edition by Ian Sommerville
Software Engineering What is SE, Anyway? Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To introduce software engineering and to explain its importance To set out the answers
More informationUnit A451: Computer systems and programming. Section 2: Computing Hardware 1/5: Central Processing Unit
Unit A451: Computer systems and programming Section 2: Computing Hardware 1/5: Central Processing Unit Section Objectives Candidates should be able to: (a) State the purpose of the CPU (b) Understand the
More informationI T Consult ing Services. Kell Consulting Limited
I T Consult ing Services Kell Consulting Limited January 2008 TABLE OF CONTENTS 1. IT CONSULTING SERVICES 3 1.1. Protecting your Computer 3 1.1.1. Separate your data from Windows and programme files for
More informationAn Introduction to Software Engineering
An Introduction to Software Engineering ACSC 383 Software Engineering Efthyvoulos C. Kyriacou (PhD) Assoc. Prof. Computer Science and Engineering Department Resources : Ian Sommervile Software engineering,
More informationConfiguration Notes 290
Configuring Mediatrix 41xx FXS Gateway with the Asterisk IP PBX System June 22, 2011 Proprietary 2011 Media5 Corporation Table of Contents Introduction... 3 About Mediatrix 41xx Series FXS Gateways...
More informationPrerequisites Guide. Version 4.0, Rev. 1
Version 4.0, Rev. 1 Contents Software and Hardware Prerequisites Guide... 2 anterradatacenter Version selection... 2 Required Software Components... 2 Sage 300 Construction and Real Estate ODBC... 2 Pervasive
More informationCheck or Update Browser Settings as shown in the table below:
We outline a few tips on how to improve performance: Check or Update Browser Settings as shown in the table below: Step Action 1 Click on Start and select the Control Panel. 2 Double click on Internet
More informationBusiness and Economics Applications
Business and Economics Applications Most of the word problems you do in math classes are not actually related to real life. Textbooks try to pretend they are by using real life data, but they do not use
More informationCoefficient of Determination
Coefficient of Determination The coefficient of determination R 2 (or sometimes r 2 ) is another measure of how well the least squares equation ŷ = b 0 + b 1 x performs as a predictor of y. R 2 is computed
More informationFootswitch Controller OPERATING INSTRUCTIONS
MIDI Solutions Footswitch Controller OPERATING INSTRUCTIONS MIDI Solutions Footswitch Controller Operating Instructions M404-100 2012 MIDI Solutions Inc. All rights reserved. MIDI Solutions Inc. PO Box
More informationASTRI - Astrofisica con Specchi a Tecnologia Replicante Italiana
Code: Issue 1 DATE Page 1 ASTRI Software Requirements and Use Cases Prepared by: Name: Joseph Schwarz Signature: Date: May 09, 2012 Gino Tosti + ALL Reviewed by: Name: Signature: Date: Approved by: Name:
More informationCOMMMONITOR SOFTWARE MANUAL
COMMMONITOR SOFTWARE MANUAL 311 Meacham Ave Elmont NY 11003 tel. (516) 327-0000 fax (516) 327-4645 e-mail: excalibur@mil-1553.com website: www.mil-1553.com Table of Contents 1 Introduction..................................................
More informationSoftware testing. Objectives
Software testing cmsc435-1 Objectives To discuss the distinctions between validation testing and defect testing To describe the principles of system and component testing To describe strategies for generating
More informationSSI-USB. Flexible Embedded Platform. Brief English Version
SSI-USB Brief English Version Seite 1/6 SSI-USB Flexible Embedded Platform Brief English Version Hardware v1.0 Dokument: 1401171103 SSI-USB Brief English Version Seite 2/6 1 Preface The SSI-USB-module
More informationCredit (Commonwealth Bank Home Loan Exemption) Order 1996
Queensland Credit Act 1987 Credit (Commonwealth Bank Home Loan Exemption) Order 1996 Reprinted as in force on 2 August 1996 Reprint No. 0A This reprint is prepared by the Office of the Queensland Parliamentary
More informationSection 3.2 Polynomial Functions and Their Graphs
Section 3.2 Polynomial Functions and Their Graphs EXAMPLES: P(x) = 3, Q(x) = 4x 7, R(x) = x 2 +x, S(x) = 2x 3 6x 2 10 QUESTION: Which of the following are polynomial functions? (a) f(x) = x 3 +2x+4 (b)
More informationAbstraction as the Key for Invariant Verication Saddek Bensalem and Susanne Graf and Yassine Lakhnech VERIMAG? Centre Equation 2, avenue de Vignate F-38610 Gieres France fbensalem,graf,lakhnechg@imag.fr
More informationRemote Control Invitations Invite Someone to Control your Computer
Invite Someone to Control your Computer Table of contents: - Glossary - Installation Process - Inviting Someone to Control your Computer About NSN Connect and this document NSN Connect has been developed
More informationComplete System Solutions For Personnel and Time Management
All from one source Time- and Data Management from ISGUS The functional units of the IT terminal series from ISGUS have been developed as a communicative component of the complete system solution for efficient
More informationWeek 1 out-of-class notes, discussions and sample problems
Week 1 out-of-class notes, discussions and sample problems Although we will primarily concentrate on RISC processors as found in some desktop/laptop computers, here we take a look at the varying types
More informationWhat's Wrong With Formal Programming Methods? Eric C.R. Hehner
What's Wrong With Formal Programming Methods? Eric C.R. Hehner Department of Computer Science, University of Toronto, Toronto M5S 1A4 Canada The January 1991 issue of Computing Research News includes the
More informationFujitsu s Platforms Business Strategy
Fujitsu s Platforms Business Strategy July 22, 2004 Chiaki Ito Corporate Executive Vice President Fujitsu Limited 1 All Rights Reserved, Fujitsu Limited 2004 Expanding Range of Networked Devices All goods
More informationHow To Understand Gate
Time Facility for German Galileo Test Environment GATE J. Furthner, German Aerospace Center () Folie 1, GTFS 2005 > JF Content Overview of GATE Major Objectives of GATE GATE Field Service Area Functions
More informationThe Greatest Common Factor; Factoring by Grouping
296 CHAPTER 5 Factoring and Applications 5.1 The Greatest Common Factor; Factoring by Grouping OBJECTIVES 1 Find the greatest common factor of a list of terms. 2 Factor out the greatest common factor.
More information7 OUT1 8 OUT2 9 OUT3 10 OUT4 11 OUT5 12 OUT6 13 OUT7 14 OUT8 15 OUT9 16 OUT10 17 OUT11 18 OUT12 19 OUT13 20 OUT14 21 OUT15 22 OUT16 OUT17 23 OUT18
18 CHANNELS LED DRIVER GENERAL DESCRIPTION IS31FL3218 is comprised of 18 constant current channels each with independent PWM control, designed for driving LEDs. The output current of each channel can be
More informationNetworking Basics for Automation Engineers
Networking Basics for Automation Engineers Page 1 of 10 mac-solutions.co.uk v1.0 Oct 2014 1. What is Transmission Control Protocol/Internet Protocol (TCP/IP)------------------------------------------------------------
More informationDivision of Administration (DOA) Desktop Support
Division of Administration (DOA) Desktop Support Computer Power Conservation Settings for XP & Vista Operating Systems XP Power Options Overview Using Power Options in Control Panel, you can reduce the
More informationUSB Card Reader Interface User Manual
USB Card Reader Interface User Manual SB Research 2009-2012 The USB Reader Interface family: Concept: The USB Card Reader Interface allows access control card readers to be connected to a PC, in order
More informationSoftware Development Phases
Software Development Phases Specification of the task Design of a solution Implementation of solution Analysis of solution Testing and debugging Maintenance and evolution of the system Obsolescence Specification
More informationMonitorKey USB Driver Installation Instructions
MonitorKey USB Driver Installation Instructions The following procedure is used to install the drivers for the USB port of the EDI MonitorKey Programming Tool. If a serial version of the MonitorKey Programming
More informationETRX2 and ETRX357 Wireless Mesh Networking Modules. Application Note Accessing Modules over the Internet
Telegesis ETRX2, ETRX35x TG-APP-Internet-100 Application Note ETRX2 and ETRX357 Wireless Mesh Networking Modules Application Note Accessing Modules over the Internet (Rev 1.00) Table of Contents 1 INTRODUCTION...
More informationHow to make your system mobile with Paragon Drive Copy 10 and Microsoft Windows Virtual PC
PARAGON Technologie GmbH, Systemprogrammierung Heinrich-von-Stephan-Str. 5c 79100 Freiburg, Germany Tel. +49 (0) 761 59018201 Fax +49 (0) 761 59018130 Internet www.paragon-software.com Email sales@paragon-software.com
More informationCSCE 465 Computer & Network Security
CSCE 465 Computer & Network Security Instructor: Dr. Guofei Gu http://courses.cse.tamu.edu/guofei/csce465/ Secret Key Cryptography (I) 1 Introductory Remarks Roadmap Feistel Cipher DES AES Introduction
More informationAutomatic Device Driver Synthesis with Termite
Automatic Device Driver Synthesis with Termite Leonid Ryzhyk Peter Chubb Ihor Kuz Etienne Le Sueur Gernot Heiser NICTA The University of New South Wales Open Kernel Labs Sydney, Australia leonid.ryzhyk@nicta.com.au
More informationPrinted in China. Issue 1.2 AT&T 03/07. Advanced American Telephones. AT&T and the AT&T logo are trademarks of AT&T Knowledge Ventures, licensed to
2007 Advanced American Telephones. All rights reserved. AT&T and the AT&T logo are trademarks of AT&T Knowledge Ventures, licensed to Advanced American Telephones. Printed in China. Issue 1.2 AT&T 03/07
More informationHow to Install Microsoft Windows Server 2008 R2 in VMware ESXi
How to Install Microsoft Windows Server 2008 R2 in VMware ESXi I am not responsible for your actions or their outcomes, in any way, while reading and/or implementing this tutorial. I will not provide support
More informationThe benefits of Cloud Computing
WHITE PAPER The benefits of Cloud Computing by Richard Ferriman, CEO (UK) of appichar Ltd The boom in Cloud computing over the past few years has led to a situation that is common to many innovations and
More informationCommunicating with devices
Introduction to I/O Where does the data for our CPU and memory come from or go to? Computers communicate with the outside world via I/O devices. Input devices supply computers with data to operate on.
More informationOUTILS DE DÉMONSTRATION
OUTILS DE DÉMONSTRATION AUTOMATIQUE ET PREUVE DE CIRCUITS ÉLECTRONIQUES Laurence Pierre Laboratoire TIMA, Grenoble PREAMBLE Design/validation of embedded applications: Design/validation for the system
More informationGOA UNIVERSITY. Scheme of Instruction Hrs/Week
GOA UNIVERSITY SECOND/THIRD YEAR OF BACHELOR S DEGREE COURSE IN COMPUTER SEMISTER III Sub Code CE3.1 AM3 Applied Mathematics III 3 1 0 3 100 20+5 125 CE3.2BC++ Basics of C++ 3 1 2 3 100 20+5 50 175 CE3.3PPL
More informationFN:PCMCSET-M1.DOC. PCMCSET SOFTWARE for ATS Master Clocks System Clocks and Displays
FN:PCMCSET-M1.DOC PCMCSET SOFTWARE for ATS Master Clocks System Clocks and Displays ATS FREE SOFTWARE AGREEMENT Applied Technical Systems (ATS) grants you the right to use this software according to the
More informationConsult protocol, Nissan Technical egroup, Issue 6
Consult protocol, Nissan Technical egroup, Issue 6 1. Electrical and Signaling protocol 1.1. Consult terminal or PC communications is via three wire bus. TX, RX and Async Clock. 1.2. TX data to ECU level
More informationWire-speed Packet Capture and Transmission
Wire-speed Packet Capture and Transmission Luca Deri Packet Capture: Open Issues Monitoring low speed (100 Mbit) networks is already possible using commodity hardware and tools based on libpcap.
More information