GCC-AVR Inline Assembler Cookbook Version 1.2

Size: px
Start display at page:

Download "GCC-AVR Inline Assembler Cookbook Version 1.2"

Transcription

1 GCC-AVR Inline Assemble Cookbook Vesion 1.2 About this Document The GNU C compile fo Atmel AVR isk pocessos offes, to embed assembly language code into C pogams. This cool featue may be used fo manually optimizing time citical pats of the softwae o to use specific pocesso instuction, which ae not available in the C language. Because of a lack of documentation, especially fo the AVR vesion of the compile, it may take some time to figue out the implementation details by studying the compile and assemble souce code. Thee ae also a few sample pogams available in the net. Hopefully this document will help to incease thei numbe. It's assumed, that you ae familia with witing AVR assemble pogams, because this is no AVR assemble pogamming tutoial. It's no C language tutoial eithe. Copyight (C) 2001 by egnite Softwae GmbH Pemission is ganted to copy and distibute vebatim copies of this manual povided that the copyight notice and this pemission notice ae peseved on all copies. Pemission is ganted to copy and distibute modified vesions of this manual povided that the entie esulting deived wok is distibuted unde the tems of a pemission notice identical to this one. This is an ealy elease of this document. It descibes vesion of the compile, but most pats ae still valid fo vesion Thee may be some pats, which hadn't been completely undestood by the autho himself and not all samples had been tested so fa. Because the autho is Geman and not familia with the English language, thee ae definitely some typos and syntax eos in the text. As a pogamme the autho knows, that a wong comment in the code sometimes might be wose than none. Anyway, he decided to offe his little knowledge to the public, in the hope to get enough esponse to impove this document. Feel fee to contact the autho via . Fo the latest elease check Hene, 7 th of May 2001 Haald Kipp haald.kipp@egnite.de Contents 1 GCC Statement asm Assemble Code Input and Output Opeands Clobbes Assemble Macos Index... 8 Histoy 07/05/01 V 1.1: Output and input lists sequence coected in chapte 1. Multibyte opeands added. Index added. Some typos coected. 07/05/01 V 1.2: subi eplaced by inc in clobbe samples. Pointe type is mandantoy. GCC-AVR Inline Assemble Cookbook 1/8

2 1 GCC Statement asm Let's stat with a simple example of eading a value fom pot D: asm("in %0, %1" : "=" (value) : "I" (PORTD) : Each asm statement is devided by colons into fou pats: 1. The assemble instuctions, defined as a single sting constant: "in %0, %1" 2. A list of output opeands, sepaated by commas. Ou example uses just one: "=" (value) 3. A comma sepaated list of input opeands. Again ou example uses one opeand only: "I" (PORTD) 4. Clobbeed egistes, left empty in ou example. You can wite assemble instuctions in much the same way like nomal assemble pogams. Howeve, egistes and constants ae used in a diffeent way, if they efe to expessions of you C pogam. The connection between egistes and C opeands is specified in the second and thid pat of the asm instuction, esp. the list of input and output opeands. The geneal fom is asm(code : output opeand list : input opeand list : clobbe list In the code section opeands ae efeed by a pecent sign followed by a single digit. %0 efes to the fist %1 to the second opeand and so foth. In example above %0 efes to "=" (value) and %1 efes to "P" (pot). This may still look a little odd now, but the syntax of an opeand list will be explained soon. Let us fist look to that pat of a compile listing, which may have been geneated fom ou example: lds 24,value /* #APP */ in 24, 12 /* #NOAPP */ sts value,24 The comments have been added by the compile to infom the assemble, that the included code has not been geneated by the compilation of C statements, but by inline assemble statements. The compile selected 24, to get the value. It may have selected any othe egiste, though. It may not explicitely load o stoe the value and it may even decide not to include you assemble code at all. All these decisions ae pat of the compile's optimization stategie. Fo example, if you neve use the vaiable value in the emaining pat of the C pogam, the compile will most likely emove you code, unless you switched off optimization. To avoid this, you can add the volatile attibute to the asm statement: asm volatile("in %0, %1" : "=" (value) : "I" (PORTD) : The last pat of the asm instuction, the clobbe list, is mainly used to tell the compile about modifications done by the assemble code. This pat may be omitted, all othe pats ae equied, but may be left empty. If you assemble outine won't use any input o output opeand, still two colons must follow the assemble code sting. A good example is a simple statement to disable inteupts: asm volatile("cli":: GCC-AVR Inline Assemble Cookbook 2/8

3 2 Assemble Code You can use the same assemble instuction mnemonics, as you'd use with any othe AVR assemble. And you can wite as many assemble statements into one code sting as you like and you flash memoy is able to hold. To make it moe eadable, you should put each statement on a sepeate line: asm volatile("nop\n\t" "nop\n\t" "nop\n\t" "nop\n\t" :: The linefeed and tab chaactes will make the assemble listing geneated by the compile moe eadable. It may look a bit odd fo the fist time, but that's the way the compile ceates it's own assemble code. You may also make use of some special egistes. Symbol SREG SP_H SP_L tmp_eg zeo_eg PC_ Registe Status egiste at addess 0x3F Stack pointe high byte at addess 0x3E Stack pointe low byte at addess 0x3D Registe 0, used fo tempoay stoage Registe 1, always zeo Pogam counte? Registe 0 may be feely used by you assemble code and need not to be estoed at the end of you code. It's a good idea to use tmp_eg and zeo_eg instead of 0 o 1, just in case a new compile vesion might change the egiste definitions. 3 Input and Output Opeands Each input and output opeand is descibed by a constaint sting followed by a C expession in paantheses. GCC-AVR knows the following constaint chaactes: Constaint Used fo Range a Simple uppe egistes 16 to 23 b Base pointe egistes pais y,z d Uppe egiste 16 to 31 e Pointe egiste pais x,y,z G Floating point constant 0.0 I 6-bit positive intege constant 0 to 63 J 6-bit negative intege constant -63 to 0 K Intege constant 2 (Pogam counte?) L Intege constant 0 l Lowe egistes 0 to 15 M 8-bit intege constant 0 to 255 N Intege constant -1 O Intege constant 8, 16, 24 P Intege constant 1 Any egiste 0 to 31 t Tempoay egiste 0 w Special uppe egiste pais 24, 26, 28, 30 x Pointe egiste pai X x (27:26) y Pointe egiste pai Y y (29:28) z Pointe egiste pai Z z (31:30) These definitions seem not to fit popely to the AVR instuction set. The autho's assumption is, that this pat of the compile has neve been eally finished in this vesion, but that assumption may be wong. The selection of the pope containt depends on the ange of the constants o egistes, which must be acceptable to the AVR instuction they ae used with. The C compile doesn't check any line of you assemble code. But it is able to check the constaint against you C expession. Howeve, if you specify the wong constaints, then the compile may silently pass wong code to the assemble. And, of couse, the assemble will fail with some cyptic output o intenal eos. Fo example, if you specify the constaint "" and you ae using this egiste with an "oi" instuction in you assemble code, then the compile may select any egiste. This will fail, if the compile GCC-AVR Inline Assemble Cookbook 3/8

4 chooses 2 to 15. (It will neve choose 0 o 1, because these ae uses fo special puposes.) That's why the coect constaint in that case is "d". On the othe hand, if you use the constaint "M", the compile will take cae, that you don't pass anything else but an 8-bit value. Late on we will see, how to pass multibyte expession esults to the assemble code. The following table shows all AVR assemble mnemonics, which equie opeands, and the elated containts. Because of the impope constaint definitions in vesion , they aen't stict enough. Thee is, fo example, no constaint, which esticts intege constants to the ange 0 to 7 fo bit set and bit clea opeations. Mnemo adc add adiw and andi as bcl bld bbc bbs bset bst cbi cb Constaints w,i I,I I,label I,label I,I I,I d,i com cp cpc cpi cpse dec elpm eo in inc ld ldd ldi lds lpm t,z,i,e,b,label t,z lsl ls mov mul neg o oi out pop push ol o sbc sbci sbi I, I,I sbic sbiw sb sbc sbs se st std sts sub subi swap I,I w,i,i,i d e, b, label, Constaint chaactes may be pepended by a single constaint modifie. Containts without a modifie specify ead-only opeands. Modifies ae: Modifie Specifies = Wite-only opeand + Read-wite opeand (not suppoted by inline assemble) & Registe should be used fo output only Output opeands must be wite-only and the C expession esult must be an lvalue, which means that they must be valid on the left side of assignments. Note, that the compile will not check, if they ae of easonable type fo the kind of opeation used in the assemble instuctions. Input opeands ae, you guessed it, ead-only. But what, if you need the same opeand fo input and output, as ead-wite opeands ae not suppoted? As stated above, ead-wite opeands ae not suppoted in inline assemble code. But thee's anothe solution. Fo input opeatos it is possible to use a single digit in the constaint sting. Using digit n tells the compile to use the same egiste as fo the n-th opeand, stating with zeo. Hee is an example: asm volatile("swap %0" : "=" (value) : "0" (value) This statement will swap the nibbles of an 8-bit vaiable named value. Constaint "0" tells the compile, to use the same input egiste as fo the fist opeand. Note howeve, that this doesn't automatically imply the evese case. The compile may choose the same egistes fo input and output, even if not told to do so. This is no poblem in most cases, but may be fatal, if the output opeato is modified by the assemble code befoe the input opeato is used. In situation, whee you code depends on diffeent egistes used fo input and output opeands, you must add the & constaint modifie to you output opeand. The following example demonstates this poblem: asm volatile("in %0,%1" "out %1, %2" : "=&" (input) : "I" (pot), "" (output) In this example an input value is ead fom a pot and then an output value is witten to the same pot. If the compile would have choosen the same egiste fo input and output, then the output value would have been GCC-AVR Inline Assemble Cookbook 4/8

5 destoyed on the fist assemble instuction. Fotunately this example uses the & constaint modifie to instuct the compile not to select any egiste fo the output value, which is used fo any of the input opeands. Back to swapping. Hee is the code to swap high and low byte of a 16-bit value: asm volatile("mov tmp_eg, %A0" "mov %A0, %B0" "mov %B0, tmp_eg " : "=" (value) : "0" (value) Fist you will notice the usage of egiste tmp_eg, which we listed among othe special egistes in chapte 2. You can use this egiste without saving its contents. Completely new ae those lettes A and B in %A0 and %B0. In fact they efe to two diffeent 8-bit egistes, both containing a pat of value. Anothe example to swap bytes of a 32-bit value: asm volatile("mov tmp_eg, %A0" "mov %A0, %D0" "mov %D0, tmp_eg " "mov tmp_eg, %B0" "mov %B0, %C0" "mov %C0, tmp_eg " : "=" (value) : "0" (value) Now the explanation of the additional lettes becomes tivial. If the opeand assigned to an 8-bit egiste is a multibyte opeand, then the compile will automatically assign enough egistes to hold the entie opeand. In the assemble code you use %A0 to efe to the lowest byte of the fist opeand, %A1 to the lowest byte of the second opeand and so on. The next byte of the fist opeand will be %B0, the next byte %C0 and so on. This also implies, that it might be sometimes neccessay to cast the type of an input opeand to the desied size. 4 Clobbes As stated peviously, the last pat of the asm statement, the list of clobbes, may be omitted, including the colon sepeato. Howeve, if you ae using egistes, which had not been passed as opeands, you need to infom the compile about this. The following example will do an atomic incement. It incements an 8-bit value pointed to by a pointe vaiable in one go, without being inteupted by an inteupt outine o anothe thead in a multitheaded envionment. Note, that we must use a pointe, because the incemented value needs to be stoed befoe inteupts ae enabled. asm volatile( "cli" "ld 24, %a0" "inc 24" "st %a0, 24" "sei" : : "z" (pt) : "24" GCC-AVR Inline Assemble Cookbook 5/8

6 The compile might poduce the following code: cli ld 24, Z inc 24 st Z, 24 sei One easy solution to avoid clobbeing egiste 24 is, to make use of the special tempoay egiste tmp_eg defined by the compile. asm volatile( "cli" "ld tmp_eg, %a0" "inc tmp_eg " "st %a0, tmp_eg " "sei" : : "z" (pt) The compile is pepaed to eload this egiste next time it uses it. Anothe poblem with the above code is, that it should not be called in code sections, whee inteupts ae disabled and should be kept disabled, because it will enable inteupts at the end. We may stoe the cuent status, but then we need anothe egiste. Again we can solve this without clobbeing a fixed, but let the compile select it. This could be done with the help of a local C vaiable. { } uint8_t s; asm volatile( "in %0, SREG " "cli" "ld tmp_eg, %a1" "inc tmp_eg " "st %a1, tmp_eg " "out SREG, %0" : "=&" (t) : "z" (pt) Now anything seems coect, but it isn't eally. The assemble code modifies the vaiable, that pt points to. The compile will not ecognize this and may keep its value in any of the othe egistes. Not only, that the compile woks with the wong value, but also the assemble code does, because the C pogam may have modified the value too, but the compile didn't update the memoy location fo optimization easons. The wost thing you can do in this case: { } uint8_t s; asm volatile( "in %0, SREG " "cli" "ld tmp_eg, %a1" "inc tmp_eg " "st %a1, tmp_eg " "out SREG, %0" : "=&" (t) : "z" (pt) : "memoy" GCC-AVR Inline Assemble Cookbook 6/8

7 The special clobbe "memoy" infoms the compile, that the assemble code may modify any memoy location. It foces the compile to update all vaiables, which contents is cuently hold in a egiste befoe executing the assemble code. And of couse, eveything has to be eloaded again afte this code. In most situations a much bette solution would be to declae the pointe destination itself volatile: volatile uint8_t *pt; This way, the compile expects the value pointed to by pt to be changed and will load it wheneve used and stoe it wheneve modified. Situation, in which you need clobbes, ae vey ae. In most cases thee will be bette ways. Clobbeed egistes will foce the compile to stoe thei values befoe and eload them afte you assemble code. Avoiding them, enables the full optimization powe. 5 Assemble Macos In ode to euse you assemble language pats, it is useful to define them as macos and put them into include files. GCC-AVR comes with a bunch of them, which could be found in the diectoy av/include. Using such include files may poduce compile wanings, if they ae used in modules, which ae compiled in stict ANSI mode. To avoid that, you can wite asm instead of asm and volatile instead of volatile. These ae equivalent aliases. Anothe poblem with eused macos aises, if you ae using labels. In such cases you may make use of the special patten %=, which is eplaced by a unique numbe on each asm statement. The following code had been taken fom av/include/iomacos.h: #define loop_until_bit_is_clea(pot, bit) \ asm volatile ( \ "L_%=: " "sbic %0, %1" \ "jmp L_%=" \ : /* no outputs */ \ : "I" ((uint8_t)(pot)), \ "I" ((uint8_t)(bit)) \ ) When used fo the fist time, L_%= may be tanslated to L_1404, the next usage might ceate L_1405 o whateve. In any case, the labels became unique too. GCC-AVR Inline Assemble Cookbook 7/8

8 6 Index %= 7 %0 2 %A0 5 asm 7 SP_H 3 SP_L 3 SREG 3 tmp_eg 3, 6 volatile 7 zeo_eg 3 16-bit value 5 32-bit value 5 8-bit value 4 asm 2 assemble code 3 assemble mnemonics 4 atomic incement 5 clobbes 5 constaint chaactes 3 constaint modifie 4 intenal eo 3 inteupt 2, 6 labels 7 local vaiable 6 lvalue 4 macos 7 memoy 7 multibyte opeand 5 opeands 3 optimization 2, 6 stack pointe 3 status egiste 3 type cast 5 unique numbe 7 volatile 2, 7 GCC-AVR Inline Assemble Cookbook 8/8

dc - Linux Command Dc may be invoked with the following command-line options: -V --version Print out the version of dc

dc - Linux Command Dc may be invoked with the following command-line options: -V --version Print out the version of dc - CentOS 5.2 - Linux Uses Guide - Linux Command SYNOPSIS [-V] [--vesion] [-h] [--help] [-e sciptexpession] [--expession=sciptexpession] [-f sciptfile] [--file=sciptfile] [file...] DESCRIPTION is a evese-polish

More information

Reader & ReaderT Monad (11A) Young Won Lim 8/20/18

Reader & ReaderT Monad (11A) Young Won Lim 8/20/18 Copyight (c) 2016-2018 Young W. Lim. Pemission is ganted to copy, distibute and/o modify this document unde the tems of the GNU Fee Documentation License, Vesion 1.2 o any late vesion published by the

More information

COSC 6385 Computer Architecture. - Pipelining

COSC 6385 Computer Architecture. - Pipelining COSC 6385 Compute Achitectue - Pipelining Sping 2012 Some of the slides ae based on a lectue by David Culle, Pipelining Pipelining is an implementation technique wheeby multiple instuctions ae ovelapped

More information

COEN-4730 Computer Architecture Lecture 2 Review of Instruction Sets and Pipelines

COEN-4730 Computer Architecture Lecture 2 Review of Instruction Sets and Pipelines 1 COEN-4730 Compute Achitectue Lectue 2 Review of nstuction Sets and Pipelines Cistinel Ababei Dept. of Electical and Compute Engineeing Maquette Univesity Cedits: Slides adapted fom pesentations of Sudeep

More information

The Java Virtual Machine. Compiler construction The structure of a frame. JVM stacks. Lecture 2

The Java Virtual Machine. Compiler construction The structure of a frame. JVM stacks. Lecture 2 Compile constuction 2009 Lectue 2 Code geneation 1: Geneating code The Java Vitual Machine Data types Pimitive types, including intege and floating-point types of vaious sizes and the boolean type. The

More information

The Processor: Improving Performance Data Hazards

The Processor: Improving Performance Data Hazards The Pocesso: Impoving Pefomance Data Hazads Monday 12 Octobe 15 Many slides adapted fom: and Design, Patteson & Hennessy 5th Edition, 2014, MK and fom Pof. May Jane Iwin, PSU Summay Pevious Class Pipeline

More information

GARBAGE COLLECTION METHODS. Hanan Samet

GARBAGE COLLECTION METHODS. Hanan Samet gc0 GARBAGE COLLECTION METHODS Hanan Samet Compute Science Depatment and Cente fo Automation Reseach and Institute fo Advanced Compute Studies Univesity of Mayland College Pak, Mayland 07 e-mail: hjs@umiacs.umd.edu

More information

Introduction To Pipelining. Chapter Pipelining1 1

Introduction To Pipelining. Chapter Pipelining1 1 Intoduction To Pipelining Chapte 6.1 - Pipelining1 1 Mooe s Law Mooe s Law says that the numbe of pocessos on a chip doubles about evey 18 months. Given the data on the following two slides, is this tue?

More information

a Not yet implemented in current version SPARK: Research Kit Pointer Analysis Parameters Soot Pointer analysis. Objectives

a Not yet implemented in current version SPARK: Research Kit Pointer Analysis Parameters Soot Pointer analysis. Objectives SPARK: Soot Reseach Kit Ondřej Lhoták Objectives Spak is a modula toolkit fo flow-insensitive may points-to analyses fo Java, which enables expeimentation with: vaious paametes of pointe analyses which

More information

UCB CS61C : Machine Structures

UCB CS61C : Machine Structures inst.eecs.bekeley.edu/~cs61c UCB CS61C : Machine Stuctues Lectue SOE Dan Gacia Lectue 28 CPU Design : Pipelining to Impove Pefomance 2010-04-05 Stanfod Reseaches have invented a monitoing technique called

More information

Computer Science 141 Computing Hardware

Computer Science 141 Computing Hardware Compute Science 141 Computing Hadwae Fall 2006 Havad Univesity Instucto: Pof. David Books dbooks@eecs.havad.edu [MIPS Pipeline Slides adapted fom Dave Patteson s UCB CS152 slides and May Jane Iwin s CSE331/431

More information

In order to learn which questions have been answered correctly: 1. Print these pages. 2. Answer the questions.

In order to learn which questions have been answered correctly: 1. Print these pages. 2. Answer the questions. In ode to lean which questions have been answeed coectly: 1. Pint these pages. 2. Answe the questions. 3. Send this assessment with the answes via: a. FAX to (212) 967-3498. O b. Mail the answes to the

More information

User Specified non-bonded potentials in gromacs

User Specified non-bonded potentials in gromacs Use Specified non-bonded potentials in gomacs Apil 8, 2010 1 Intoduction On fist appeaances gomacs, unlike MD codes like LAMMPS o DL POLY, appeas to have vey little flexibility with egads to the fom of

More information

CSE4201. Computer Architecture

CSE4201. Computer Architecture CSE 4201 Compute Achitectue Pof. Mokhta Aboelaze Pats of these slides ae taken fom Notes by Pof. David Patteson at UCB Outline MIPS and instuction set Simple pipeline in MIPS Stuctual and data hazads Fowading

More information

By: Dr. Hamed Saghaei

By: Dr. Hamed Saghaei By: Dr. Hamed Saghaei The AVR RISC Microcontroller supports powerful and efficient addressing modes for access to the program memory (Flash) and data memory (SRAM). This section describes the different

More information

Lecture 8 Introduction to Pipelines Adapated from slides by David Patterson

Lecture 8 Introduction to Pipelines Adapated from slides by David Patterson Lectue 8 Intoduction to Pipelines Adapated fom slides by David Patteson http://www-inst.eecs.bekeley.edu/~cs61c/ * 1 Review (1/3) Datapath is the hadwae that pefoms opeations necessay to execute pogams.

More information

User Visible Registers. CPU Structure and Function Ch 11. General CPU Organization (4) Control and Status Registers (5) Register Organisation (4)

User Visible Registers. CPU Structure and Function Ch 11. General CPU Organization (4) Control and Status Registers (5) Register Organisation (4) PU Stuctue and Function h Geneal Oganisation Registes Instuction ycle Pipelining anch Pediction Inteupts Use Visible Registes Vaies fom one achitectue to anothe Geneal pupose egiste (GPR) ata, addess,

More information

Any modern computer system will incorporate (at least) two levels of storage:

Any modern computer system will incorporate (at least) two levels of storage: 1 Any moden compute system will incopoate (at least) two levels of stoage: pimay stoage: andom access memoy (RAM) typical capacity 32MB to 1GB cost pe MB $3. typical access time 5ns to 6ns bust tansfe

More information

CS 2461: Computer Architecture 1 Program performance and High Performance Processors

CS 2461: Computer Architecture 1 Program performance and High Performance Processors Couse Objectives: Whee ae we. CS 2461: Pogam pefomance and High Pefomance Pocessos Instucto: Pof. Bhagi Naahai Bits&bytes: Logic devices HW building blocks Pocesso: ISA, datapath Using building blocks

More information

Chapter 4 (Part III) The Processor: Datapath and Control (Pipeline Hazards)

Chapter 4 (Part III) The Processor: Datapath and Control (Pipeline Hazards) Chapte 4 (Pat III) The Pocesso: Datapath and Contol (Pipeline Hazads) 陳瑞奇 (J.C. Chen) 亞洲大學資訊工程學系 Adapted fom class notes by Pof. M.J. Iwin, PSU and Pof. D. Patteson, UCB 1 吃感冒藥副作用怎麼辦? http://big5.sznews.com/health/images/attachement/jpg/site3/20120319/001558d90b3310d0c1683e.jpg

More information

You Are Here! Review: Hazards. Agenda. Agenda. Review: Load / Branch Delay Slots 7/28/2011

You Are Here! Review: Hazards. Agenda. Agenda. Review: Load / Branch Delay Slots 7/28/2011 CS 61C: Geat Ideas in Compute Achitectue (Machine Stuctues) Instuction Level Paallelism: Multiple Instuction Issue Guest Lectue: Justin Hsia Softwae Paallel Requests Assigned to compute e.g., Seach Katz

More information

RBAC Tutorial. Brad Spengler Open Source Security, Inc. Locaweb

RBAC Tutorial. Brad Spengler Open Source Security, Inc. Locaweb RBAC Tutoial Bad Spengle Open Souce Secuity, Inc. Locaweb - 2012 Oveview Why Access Contol? Goals Achitectue Implementation Lookup example Subject example Questions/Requests Why Access Contol? Access Contol

More information

Multidimensional Testing

Multidimensional Testing Multidimensional Testing QA appoach fo Stoage netwoking Yohay Lasi Visuality Systems 1 Intoduction Who I am Yohay Lasi, QA Manage at Visuality Systems Visuality Systems the leading commecial povide of

More information

Configuring RSVP-ATM QoS Interworking

Configuring RSVP-ATM QoS Interworking Configuing RSVP-ATM QoS Intewoking Last Updated: Januay 15, 2013 This chapte descibes the tasks fo configuing the RSVP-ATM QoS Intewoking featue, which povides suppot fo Contolled Load Sevice using RSVP

More information

Persistent Memory what developers need to know Mark Carlson Co-chair SNIA Technical Council Toshiba

Persistent Memory what developers need to know Mark Carlson Co-chair SNIA Technical Council Toshiba Pesistent Memoy what developes need to know Mak Calson Co-chai SNIA Technical Council Toshiba 2018 Stoage Develope Confeence EMEA. All Rights Reseved. 1 Contents Welcome Pesistent Memoy Oveview Non-Volatile

More information

CMCS Mohamed Younis CMCS 611, Advanced Computer Architecture 1

CMCS Mohamed Younis CMCS 611, Advanced Computer Architecture 1 CMCS 611-101 Advanced Compute Achitectue Lectue 6 Intoduction to Pipelining Septembe 23, 2009 www.csee.umbc.edu/~younis/cmsc611/cmsc611.htm Mohamed Younis CMCS 611, Advanced Compute Achitectue 1 Pevious

More information

DYNAMIC STORAGE ALLOCATION. Hanan Samet

DYNAMIC STORAGE ALLOCATION. Hanan Samet ds0 DYNAMIC STORAGE ALLOCATION Hanan Samet Compute Science Depatment and Cente fo Automation Reseach and Institute fo Advanced Compute Studies Univesity of Mayland College Pak, Mayland 07 e-mail: hjs@umiacs.umd.edu

More information

Computer Architecture. Pipelining and Instruction Level Parallelism An Introduction. Outline of This Lecture

Computer Architecture. Pipelining and Instruction Level Parallelism An Introduction. Outline of This Lecture Compute Achitectue Pipelining and nstuction Level Paallelism An ntoduction Adapted fom COD2e by Hennessy & Patteson Slide 1 Outline of This Lectue ntoduction to the Concept of Pipelined Pocesso Pipelined

More information

AVR ISA & AVR Programming (I) Lecturer: Sri Parameswaran Notes by: Annie Guo

AVR ISA & AVR Programming (I) Lecturer: Sri Parameswaran Notes by: Annie Guo AVR ISA & AVR Programming (I) Lecturer: Sri Parameswaran Notes by: Annie Guo 1 Lecture Overview AVR ISA AVR Instructions & Programming (I) Basic construct implementation 2 Atmel AVR 8-bit RISC architecture

More information

Efficient Execution Path Exploration for Detecting Races in Concurrent Programs

Efficient Execution Path Exploration for Detecting Races in Concurrent Programs IAENG Intenational Jounal of Compute Science, 403, IJCS_40_3_02 Efficient Execution Path Exploation fo Detecting Races in Concuent Pogams Theodous E. Setiadi, Akihiko Ohsuga, and Mamou Maekaa Abstact Concuent

More information

CISC 662 Graduate Computer Architecture Lecture 6 - Hazards

CISC 662 Graduate Computer Architecture Lecture 6 - Hazards CISC 662 Gaduate Compute Achitectue Lectue 6 - Hazads Michela Taufe http://www.cis.udel.edu/~taufe/teaching/cis662f07 Powepoint Lectue Notes fom John Hennessy and David Patteson s: Compute Achitectue,

More information

Query Language #1/3: Relational Algebra Pure, Procedural, and Set-oriented

Query Language #1/3: Relational Algebra Pure, Procedural, and Set-oriented Quey Language #1/3: Relational Algeba Pue, Pocedual, and Set-oiented To expess a quey, we use a set of opeations. Each opeation takes one o moe elations as input paamete (set-oiented). Since each opeation

More information

Pipes, connections, channels and multiplexors

Pipes, connections, channels and multiplexors Pipes, connections, channels and multiplexos Fancisco J. Ballesteos ABSTRACT Channels in the style of CSP ae a poeful abstaction. The ae close to pipes and connections used to inteconnect system and netok

More information

AVR ISA & AVR Programming (I) Lecturer: Sri Parameswaran Notes by: Annie Guo

AVR ISA & AVR Programming (I) Lecturer: Sri Parameswaran Notes by: Annie Guo AVR ISA & AVR Programming (I) Lecturer: Sri Parameswaran Notes by: Annie Guo 1 Lecture Overview AVR ISA AVR Instructions & Programming (I) Basic construct implementation 2 Atmel AVR 8-bit RISC architecture

More information

(a, b) x y r. For this problem, is a point in the - coordinate plane and is a positive number.

(a, b) x y r. For this problem, is a point in the - coordinate plane and is a positive number. Illustative G-C Simila cicles Alignments to Content Standads: G-C.A. Task (a, b) x y Fo this poblem, is a point in the - coodinate plane and is a positive numbe. a. Using a tanslation and a dilation, show

More information

Journal of World s Electrical Engineering and Technology J. World. Elect. Eng. Tech. 1(1): 12-16, 2012

Journal of World s Electrical Engineering and Technology J. World. Elect. Eng. Tech. 1(1): 12-16, 2012 2011, Scienceline Publication www.science-line.com Jounal of Wold s Electical Engineeing and Technology J. Wold. Elect. Eng. Tech. 1(1): 12-16, 2012 JWEET An Efficient Algoithm fo Lip Segmentation in Colo

More information

CENG 3420 Computer Organization and Design. Lecture 07: MIPS Processor - II. Bei Yu

CENG 3420 Computer Organization and Design. Lecture 07: MIPS Processor - II. Bei Yu CENG 3420 Compute Oganization and Design Lectue 07: MIPS Pocesso - II Bei Yu CEG3420 L07.1 Sping 2016 Review: Instuction Citical Paths q Calculate cycle time assuming negligible delays (fo muxes, contol

More information

Accelerating Storage with RDMA Max Gurtovoy Mellanox Technologies

Accelerating Storage with RDMA Max Gurtovoy Mellanox Technologies Acceleating Stoage with RDMA Max Gutovoy Mellanox Technologies 2018 Stoage Develope Confeence EMEA. Mellanox Technologies. All Rights Reseved. 1 What is RDMA? Remote Diect Memoy Access - povides the ability

More information

A Memory Efficient Array Architecture for Real-Time Motion Estimation

A Memory Efficient Array Architecture for Real-Time Motion Estimation A Memoy Efficient Aay Achitectue fo Real-Time Motion Estimation Vasily G. Moshnyaga and Keikichi Tamau Depatment of Electonics & Communication, Kyoto Univesity Sakyo-ku, Yoshida-Honmachi, Kyoto 66-1, JAPAN

More information

All lengths in meters. E = = 7800 kg/m 3

All lengths in meters. E = = 7800 kg/m 3 Poblem desciption In this poblem, we apply the component mode synthesis (CMS) technique to a simple beam model. 2 0.02 0.02 All lengths in metes. E = 2.07 10 11 N/m 2 = 7800 kg/m 3 The beam is a fee-fee

More information

University of Florida EEL 4744 Dr. Eric M. Schwartz. Page 1/11 Revision 0 20-Feb-14 Mixed C and Assembly (for Atmel XMEGA)

University of Florida EEL 4744 Dr. Eric M. Schwartz. Page 1/11 Revision 0 20-Feb-14 Mixed C and Assembly (for Atmel XMEGA) Page 1/11 Revision 0 20-Feb-14 KEY WORDS Compiler, Inline Assembly, GNU Assembler, GCC, AVR-GCC RESOURCES GNU Assembler Resource - http://sourceware.org/binutils/docs-2.23.1/as/index.html AVR-LibC Inline

More information

Lecture Topics ECE 341. Lecture # 12. Control Signals. Control Signals for Datapath. Basic Processing Unit. Pipelining

Lecture Topics ECE 341. Lecture # 12. Control Signals. Control Signals for Datapath. Basic Processing Unit. Pipelining EE 341 Lectue # 12 Instucto: Zeshan hishti zeshan@ece.pdx.edu Novembe 10, 2014 Potland State Univesity asic Pocessing Unit ontol Signals Hadwied ontol Datapath contol signals Dealing with memoy delay Pipelining

More information

CENG 3420 Lecture 07: Pipeline

CENG 3420 Lecture 07: Pipeline CENG 3420 Lectue 07: Pipeline Bei Yu byu@cse.cuhk.edu.hk CENG3420 L07.1 Sping 2017 Outline q Review: Flip-Flop Contol Signals q Pipeline Motivations q Pipeline Hazads q Exceptions CENG3420 L07.2 Sping

More information

AVR ISA & AVR Programming (I)

AVR ISA & AVR Programming (I) AVR ISA & AVR Programming (I) Lecturer: Sri Parameswaran Notes by: Annie Guo Week 1 1 Lecture Overview AVR ISA AVR Instructions & Programming (I) Basic construct implementation Week 1 2 1 Atmel AVR 8-bit

More information

Review from last lecture

Review from last lecture CSE820 Gaduate Compute Achitectue Week 3 Pefomance + Pipeline Review Based on slides by David Patteson Review fom last lectue Tacking and extapolating technology pat of achitect s esponsibility Expect

More information

IP Network Design by Modified Branch Exchange Method

IP Network Design by Modified Branch Exchange Method Received: June 7, 207 98 IP Netwok Design by Modified Banch Method Kaiat Jaoenat Natchamol Sichumoenattana 2* Faculty of Engineeing at Kamphaeng Saen, Kasetsat Univesity, Thailand 2 Faculty of Management

More information

Assessment of Track Sequence Optimization based on Recorded Field Operations

Assessment of Track Sequence Optimization based on Recorded Field Operations Assessment of Tack Sequence Optimization based on Recoded Field Opeations Matin A. F. Jensen 1,2,*, Claus G. Søensen 1, Dionysis Bochtis 1 1 Aahus Univesity, Faculty of Science and Technology, Depatment

More information

MapReduce Optimizations and Algorithms 2015 Professor Sasu Tarkoma

MapReduce Optimizations and Algorithms 2015 Professor Sasu Tarkoma apreduce Optimizations and Algoithms 2015 Pofesso Sasu Takoma www.cs.helsinki.fi Optimizations Reduce tasks cannot stat befoe the whole map phase is complete Thus single slow machine can slow down the

More information

arxiv: v1 [cs.lo] 3 Dec 2018

arxiv: v1 [cs.lo] 3 Dec 2018 A high-level opeational semantics fo hadwae weak memoy models axiv:1812.00996v1 [cs.lo] 3 Dec 2018 Abstact Robet J. Colvin School of Electical Engineeing and Infomation Technology The Univesity of Queensland

More information

The Internet Ecosystem and Evolution

The Internet Ecosystem and Evolution The Intenet Ecosystem and Evolution Contents Netwok outing: basics distibuted/centalized, static/dynamic, linkstate/path-vecto inta-domain/inte-domain outing Mapping the sevice model to AS-AS paths valley-fee

More information

Administrivia. CMSC 411 Computer Systems Architecture Lecture 5. Data Hazard Even with Forwarding Figure A.9, Page A-20

Administrivia. CMSC 411 Computer Systems Architecture Lecture 5. Data Hazard Even with Forwarding Figure A.9, Page A-20 Administivia CMSC 411 Compute Systems Achitectue Lectue 5 Basic Pipelining (cont.) Alan Sussman als@cs.umd.edu as@csu dedu Homewok poblems fo Unit 1 due today Homewok poblems fo Unit 3 posted soon CMSC

More information

Prof. Feng Liu. Fall /17/2016

Prof. Feng Liu. Fall /17/2016 Pof. Feng Liu Fall 26 http://www.cs.pdx.edu/~fliu/couses/cs447/ /7/26 Last time Compositing NPR 3D Gaphics Toolkits Tansfomations 2 Today 3D Tansfomations The Viewing Pipeline Mid-tem: in class, Nov. 2

More information

On the Conversion between Binary Code and Binary-Reflected Gray Code on Boolean Cubes

On the Conversion between Binary Code and Binary-Reflected Gray Code on Boolean Cubes On the Convesion between Binay Code and BinayReflected Gay Code on Boolean Cubes The Havad community has made this aticle openly available. Please shae how this access benefits you. You stoy mattes Citation

More information

Monitors. Lecture 6. A Typical Monitor State. wait(c) Signal and Continue. Signal and What Happens Next?

Monitors. Lecture 6. A Typical Monitor State. wait(c) Signal and Continue. Signal and What Happens Next? Monitos Lectue 6 Monitos Summay: Last time A combination of data abstaction and mutual exclusion Automatic mutex Pogammed conditional synchonisation Widely used in concuent pogamming languages and libaies

More information

FACE VECTORS OF FLAG COMPLEXES

FACE VECTORS OF FLAG COMPLEXES FACE VECTORS OF FLAG COMPLEXES ANDY FROHMADER Abstact. A conjectue of Kalai and Eckhoff that the face vecto of an abitay flag complex is also the face vecto of some paticula balanced complex is veified.

More information

Lecture # 04. Image Enhancement in Spatial Domain

Lecture # 04. Image Enhancement in Spatial Domain Digital Image Pocessing CP-7008 Lectue # 04 Image Enhancement in Spatial Domain Fall 2011 2 domains Spatial Domain : (image plane) Techniques ae based on diect manipulation of pixels in an image Fequency

More information

Automatically Testing Interacting Software Components

Automatically Testing Interacting Software Components Automatically Testing Inteacting Softwae Components Leonad Gallaghe Infomation Technology Laboatoy National Institute of Standads and Technology Gaithesbug, MD 20899, USA lgallaghe@nist.gov Jeff Offutt

More information

COMP 7860 Embedded Real- Time Systems: Threads

COMP 7860 Embedded Real- Time Systems: Threads COMP 7860 Embedded Real- Time Systems: Threads Jacky Baltes Autonomous Agents Lab University of Manitoba Winnipeg, Canada R3T 2N2 Email: jacky@cs.umanitoba.ca WWW: http://www.cs.umanitoba.ca/~jacky http://aalab.cs.umanitoba.ca

More information

Spiral Recognition Methodology and Its Application for Recognition of Chinese Bank Checks

Spiral Recognition Methodology and Its Application for Recognition of Chinese Bank Checks Spial Recognition Methodology and Its Application fo Recognition of Chinese Bank Checks Hanshen Tang 1, Emmanuel Augustin 2, Ching Y. Suen 1, Olivie Baet 2, Mohamed Cheiet 3 1 Cente fo Patten Recognition

More information

Derivation of the Nodal Forces Equivalent to Uniform Pressure for Quadratic Isoparametric Elements RAWB, Last Update: 30 September 2008

Derivation of the Nodal Forces Equivalent to Uniform Pressure for Quadratic Isoparametric Elements RAWB, Last Update: 30 September 2008 Deivation of the odal oces Equivalent to Unifom Pessue fo Quadatic sopaametic Elements RWB, Last Update: 0 Septembe 008 The displacement vecto u at an point within a single element, E, is lineal elated

More information

Reachable State Spaces of Distributed Deadlock Avoidance Protocols

Reachable State Spaces of Distributed Deadlock Avoidance Protocols Reachable State Spaces of Distibuted Deadlock Avoidance Potocols CÉSAR SÁNCHEZ and HENNY B. SIPMA Stanfod Univesity We pesent a family of efficient distibuted deadlock avoidance algoithms with applications

More information

GAS IA-32 Assembly Language Programming Tony Richardson April 19, 2007

GAS IA-32 Assembly Language Programming Tony Richardson April 19, 2007 GAS IA-32 Assembly Language Pogamming Tony Richadson Apil 19, 2007 The following table contains a patial list of IA-32 assembly mnemonics. An S in the mnemonic epesents a size specification lette of eithe

More information

IP Multicast Simulation in OPNET

IP Multicast Simulation in OPNET IP Multicast Simulation in OPNET Xin Wang, Chien-Ming Yu, Henning Schulzinne Paul A. Stipe Columbia Univesity Reutes Depatment of Compute Science 88 Pakway Dive South New Yok, New Yok Hauppuage, New Yok

More information

Integrated Monitoring and Control System imac2 Controller Modbus TCP/IP Communications Manual

Integrated Monitoring and Control System imac2 Controller Modbus TCP/IP Communications Manual Integated Moniing and Contol System Vesion: 2 Ocbe 2018 Designed and Manufactued in Austalia by Ampcontol Pty Ltd WARNING! The waning symbol highlights a potential isk of injuy o death. Please shae these

More information

DEADLOCK AVOIDANCE IN BATCH PROCESSES. M. Tittus K. Åkesson

DEADLOCK AVOIDANCE IN BATCH PROCESSES. M. Tittus K. Åkesson DEADLOCK AVOIDANCE IN BATCH PROCESSES M. Tittus K. Åkesson Univesity College Boås, Sweden, e-mail: Michael.Tittus@hb.se Chalmes Univesity of Technology, Gothenbug, Sweden, e-mail: ka@s2.chalmes.se Abstact:

More information

Stochastic Optimization Fall 2010 Coopr Tutorial Project

Stochastic Optimization Fall 2010 Coopr Tutorial Project Stochastic Optimization Fall 2010 Coop Tutoial Poject Hsin-Chan Huang Kiel Matin Table of Contents Installing Coop... 3 Useful Sites:... 3 Scipting Oveview... 3 Data Geneation... 4 Open Questions & Desied

More information

Getting Started PMW-EX1/PMW-EX3. 1 Rotate the grip with the RELEASE button pressed. Overview. Connecting the Computer and PMW-EX1/EX3

Getting Started PMW-EX1/PMW-EX3. 1 Rotate the grip with the RELEASE button pressed. Overview. Connecting the Computer and PMW-EX1/EX3 A PMW-EX1/PMW-EX3 Getting Stated Oveview This document descibes how to use the XDCAM EX Vesion Up Tool (heeafte Vesion Up Tool ) to upgade the PMW-EX1 and PMW-EX3 to vesion 1.20 (PMW-EX1) o vesion 1.10

More information

4.2. Co-terminal and Related Angles. Investigate

4.2. Co-terminal and Related Angles. Investigate .2 Co-teminal and Related Angles Tigonometic atios can be used to model quantities such as

More information

A Consistent, User Friendly Interface for Running a Variety of Underwater Acoustic Propagation Codes

A Consistent, User Friendly Interface for Running a Variety of Underwater Acoustic Propagation Codes Poceedings of ACOUSTICS 6 - Novembe 6, Chistchuch, New Zealand A Consistent, Use Fiendly Inteface fo Running a Vaiety of Undewate Acoustic Popagation Codes Alec J Duncan, Amos L Maggi Cente fo Maine Science

More information

Slotted Random Access Protocol with Dynamic Transmission Probability Control in CDMA System

Slotted Random Access Protocol with Dynamic Transmission Probability Control in CDMA System Slotted Random Access Potocol with Dynamic Tansmission Pobability Contol in CDMA System Intaek Lim 1 1 Depatment of Embedded Softwae, Busan Univesity of Foeign Studies, itlim@bufs.ac.k Abstact In packet

More information

Lecture #22 Pipelining II, Cache I

Lecture #22 Pipelining II, Cache I inst.eecs.bekeley.edu/~cs61c CS61C : Machine Stuctues Lectue #22 Pipelining II, Cache I Wiewold cicuits 2008-7-29 http://www.maa.og/editoial/mathgames/mathgames_05_24_04.html http://www.quinapalus.com/wi-index.html

More information

DYNAMIC STORAGE ALLOCATION. Hanan Samet

DYNAMIC STORAGE ALLOCATION. Hanan Samet ds0 DYNAMIC STORAGE ALLOCATION Hanan Samet Compute Science Depatment and Cente fo Automation Reseach and Institute fo Advanced Compute Studies Univesity of Mayland College Pak, Mayland 074 e-mail: hjs@umiacs.umd.edu

More information

MIS to Prepress ICS. Version Date: File: ICS-MIS-Prepress-1.01.doc,.pdf. Origination & Prepress WG

MIS to Prepress ICS. Version Date: File: ICS-MIS-Prepress-1.01.doc,.pdf. Origination & Prepress WG MIS to Pepess ICS Vesion 1.01 Date: 2006-01-02 File: ICS-MIS-Pepess-1.01.doc,.pdf Oigination & Pepess WG Abstact This ICS defines the Inteface between the MIS and Pepess. It specifies the Pocesses fo a

More information

Detection and Recognition of Alert Traffic Signs

Detection and Recognition of Alert Traffic Signs Detection and Recognition of Alet Taffic Signs Chia-Hsiung Chen, Macus Chen, and Tianshi Gao 1 Stanfod Univesity Stanfod, CA 9305 {echchen, macuscc, tianshig}@stanfod.edu Abstact Taffic signs povide dives

More information

ADDING REALISM TO SOURCE CHARACTERIZATION USING A GENETIC ALGORITHM

ADDING REALISM TO SOURCE CHARACTERIZATION USING A GENETIC ALGORITHM ADDING REALISM TO SOURCE CHARACTERIZATION USING A GENETIC ALGORITHM Luna M. Rodiguez*, Sue Ellen Haupt, and Geoge S. Young Depatment of Meteoology and Applied Reseach Laboatoy The Pennsylvania State Univesity,

More information

Controlled Information Maximization for SOM Knowledge Induced Learning

Controlled Information Maximization for SOM Knowledge Induced Learning 3 Int'l Conf. Atificial Intelligence ICAI'5 Contolled Infomation Maximization fo SOM Knowledge Induced Leaning Ryotao Kamimua IT Education Cente and Gaduate School of Science and Technology, Tokai Univeisity

More information

CS 61C: Great Ideas in Computer Architecture Instruc(on Level Parallelism: Mul(ple Instruc(on Issue

CS 61C: Great Ideas in Computer Architecture Instruc(on Level Parallelism: Mul(ple Instruc(on Issue CS 61C: Geat Ideas in Compute Achitectue Instuc(on Level Paallelism: Mul(ple Instuc(on Issue Instuctos: Kste Asanovic, Randy H. Katz hbp://inst.eecs.bekeley.edu/~cs61c/fa12 1 Paallel Requests Assigned

More information

A programming model for spatio-temporal data streaming applications

A programming model for spatio-temporal data streaming applications Pocedia Compute Science Pocedia Compute Science 00 (2012) 1 10 Intenational Confeence on Computational Science, ICCS 2012 A pogamming model fo spatio-tempoal data steaming applications Shigeu Imai a,,

More information

5 4 THE BERNOULLI EQUATION

5 4 THE BERNOULLI EQUATION 185 CHATER 5 the suounding ai). The fictional wok tem w fiction is often expessed as e loss to epesent the loss (convesion) of mechanical into themal. Fo the idealied case of fictionless motion, the last

More information

Undecidability of Static Analysis. William Landi. Siemens Corporate Research Inc. 755 College Rd East.

Undecidability of Static Analysis. William Landi. Siemens Corporate Research Inc. 755 College Rd East. Undecidability of Static Analysis William Landi Siemens Copoate Reseach Inc 755 College Rd East Pinceton, NJ 08540 wlandi@sc.siemens.com Abstact Static Analysis of pogams is indispensable to any softwae

More information

Simulation-Based Test Algorithm Generation and Port Scheduling for Multi-Port Memories

Simulation-Based Test Algorithm Generation and Port Scheduling for Multi-Port Memories imulationbased Test Algoithm Geneation and Pot cheduling fo MultiPot Memoies ChiFeng Wu, ChihTsun Huang, KuoLiang Cheng, ChihWea Wang, and ChengWen Wu Depatment of Electical Engineeing ational Tsing Hua

More information

XFVHDL: A Tool for the Synthesis of Fuzzy Logic Controllers

XFVHDL: A Tool for the Synthesis of Fuzzy Logic Controllers XFVHDL: A Tool fo the Synthesis of Fuzzy Logic Contolles E. Lago, C. J. Jiménez, D. R. López, S. Sánchez-Solano and A. Baiga Instituto de Micoelectónica de Sevilla. Cento Nacional de Micoelectónica, Edificio

More information

OPTIMAL KINEMATIC SYNTHESIS OF CRANK & SLOTTED LEVER QUICK RETURN MECHANISM FOR SPECIFIC STROKE & TIME RATIO

OPTIMAL KINEMATIC SYNTHESIS OF CRANK & SLOTTED LEVER QUICK RETURN MECHANISM FOR SPECIFIC STROKE & TIME RATIO OPTIMAL KINEMATIC SYNTHESIS OF CRANK & SLOTTED LEVER QUICK RETURN MECHANISM FOR SPECIFIC STROKE & TIME RATIO Zeeshan A. Shaikh 1 and T.Y. Badguja 2 1,2 Depatment of Mechanical Engineeing, Late G. N. Sapkal

More information

A Non-blocking Directory Protocol for Large-Scale Multiprocessors. Technical Report

A Non-blocking Directory Protocol for Large-Scale Multiprocessors. Technical Report A Non-blocking Diectoy Potocol fo Lage-Scale Multipocessos Technical Repot Depatment of Compute Science and Engineeing Univesity of Minnesota 4-192 EECS Building 200 Union Steet SE Minneapolis, MN 55455-0159

More information

SIMOCODE pro. Motor Management and Control Devices. SIMOCODE pro for Modbus RTU. Answers for industry. Edition 04/2015

SIMOCODE pro. Motor Management and Control Devices. SIMOCODE pro for Modbus RTU. Answers for industry. Edition 04/2015 SIMOCODE po Moto Management and Contol Devices SIMOCODE po fo Modbus RTU Geätehandbuch Configuation Manual Edition 04/2015 Answes fo industy. Intoduction 1 System configuation and commissioning with RTU

More information

Conversion Functions for Symmetric Key Ciphers

Conversion Functions for Symmetric Key Ciphers Jounal of Infomation Assuance and Secuity 2 (2006) 41 50 Convesion Functions fo Symmetic Key Ciphes Deba L. Cook and Angelos D. Keomytis Depatment of Compute Science Columbia Univesity, mail code 0401

More information

Cold Drawn Tube. Problem:

Cold Drawn Tube. Problem: Cold Dawn Tube Poblem: An AISI 1 cold-dawn steel tube has an ID of 1.5 in and an OD of 1.75 in. What maximum extenal pessue can this tube take if the lagest pincipal nomal stess is not to exceed 8 pecent

More information

Image Enhancement in the Spatial Domain. Spatial Domain

Image Enhancement in the Spatial Domain. Spatial Domain 8-- Spatial Domain Image Enhancement in the Spatial Domain What is spatial domain The space whee all pixels fom an image In spatial domain we can epesent an image by f( whee x and y ae coodinates along

More information

Segmentation of Casting Defects in X-Ray Images Based on Fractal Dimension

Segmentation of Casting Defects in X-Ray Images Based on Fractal Dimension 17th Wold Confeence on Nondestuctive Testing, 25-28 Oct 2008, Shanghai, China Segmentation of Casting Defects in X-Ray Images Based on Factal Dimension Jue WANG 1, Xiaoqin HOU 2, Yufang CAI 3 ICT Reseach

More information

n If S is in convex position, then thee ae exactly k convex k-gons detemined by subsets of S. In geneal, howeve, S may detemine fa fewe convex k-gons.

n If S is in convex position, then thee ae exactly k convex k-gons detemined by subsets of S. In geneal, howeve, S may detemine fa fewe convex k-gons. Counting Convex Polygons in Plana Point Sets Joseph S. B. Mitchell a;1, Günte Rote b, Gopalakishnan Sundaam c, and Gehad Woeginge b a Applied Mathematics and Statistics, SUNY Stony Book, NY 11794-3600.

More information

Gravitational Shift for Beginners

Gravitational Shift for Beginners Gavitational Shift fo Beginnes This pape, which I wote in 26, fomulates the equations fo gavitational shifts fom the elativistic famewok of special elativity. Fist I deive the fomulas fo the gavitational

More information

Review: Moore s Law. EECS 252 Graduate Computer Architecture Lecture 2. Review: Joy s Law in ManyCore world. Bell s Law new class per decade

Review: Moore s Law. EECS 252 Graduate Computer Architecture Lecture 2. Review: Joy s Law in ManyCore world. Bell s Law new class per decade EECS 252 Gaduate Compute Achitectue Lectue 2 ℵ 0 Review of Instuction Sets, Pipelines, and Caches Januay 26 th, 2009 Review Mooe s Law John Kubiatowicz Electical Engineeing and Compute Sciences Univesity

More information

A Two-stage and Parameter-free Binarization Method for Degraded Document Images

A Two-stage and Parameter-free Binarization Method for Degraded Document Images A Two-stage and Paamete-fee Binaization Method fo Degaded Document Images Yung-Hsiang Chiu 1, Kuo-Liang Chung 1, Yong-Huai Huang 2, Wei-Ning Yang 3, Chi-Huang Liao 4 1 Depatment of Compute Science and

More information

What is a System:- Characteristics of a system:-

What is a System:- Characteristics of a system:- Unit 1 st :- What is a System:- A system is an odely gouping of intedependent components linked togethe accoding to a plan to achieve a specific objective. The study of system concepts has thee basic implications:

More information

Embeddings into Crossed Cubes

Embeddings into Crossed Cubes Embeddings into Cossed Cubes Emad Abuelub *, Membe, IAENG Abstact- The hypecube paallel achitectue is one of the most popula inteconnection netwoks due to many of its attactive popeties and its suitability

More information

Approaches to Automatic Programming

Approaches to Automatic Programming MITSUBISHI ELECTRIC RESEARCH LABORATORIES http://www.mel.com Appoaches to Automatic Pogamming Chales Rich, Richad C. Wates TR92-04 July 1992 Abstact This pape is an oveview of cuent appoaches to automatic

More information

Synthesize the RTL Model From Register Transfer Level to Schematic/Netlist

Synthesize the RTL Model From Register Transfer Level to Schematic/Netlist 4 Synthesize the RL Model Fom Registe ansfe Level to Schematic/Netlist always @(posedge clk) begin c = a & b; end a b clk D Q c his step will convet the RL model of you design into a netlist (and schematic)

More information

Topic -3 Image Enhancement

Topic -3 Image Enhancement Topic -3 Image Enhancement (Pat 1) DIP: Details Digital Image Pocessing Digital Image Chaacteistics Spatial Spectal Gay-level Histogam DFT DCT Pe-Pocessing Enhancement Restoation Point Pocessing Masking

More information

Shortest Paths for a Two-Robot Rendez-Vous

Shortest Paths for a Two-Robot Rendez-Vous Shotest Paths fo a Two-Robot Rendez-Vous Eik L Wyntes Joseph S B Mitchell y Abstact In this pape, we conside an optimal motion planning poblem fo a pai of point obots in a plana envionment with polygonal

More information

Computer Technology MSIS 22:198:605 Homework 1

Computer Technology MSIS 22:198:605 Homework 1 Compute Techology MSIS 22:198:605 Homewok 1 Istucto: Faid Alizadeh Due Date: Moday Septembe 30, 2002 by midight Submissio: by e-mail See below fo detailed istuctios) last updated o Septembe 27, 2002 Rules:

More information