ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University

Size: px
Start display at page:

Download "ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University"

Transcription

1 ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University Prof. Sunil P Khatri (Lab exercise created and tested by Ramu Endluri, He Zhou and Sunil P Khatri) Laboratory Exercise #6 An Introduction to Linux Device Driver Development Objective The purpose of lab this week is to create device drivers in an embedded Linux environment. Device drivers are a part of the operating system kernel which serves as the bridge between user applications and hardware devices. Device drivers facilitate access and sharing of hardware devices under the control of the operating system. Similar to Lab 5, you will create a kernel module, which prints messages to the kernel s message buffer. However, this kernel module will also moderate user access to the multiplication peripheral created in Lab 3. You will then extend the capabilities of your kernel module, thereby creating a complete character device driver. To test your multiplication device driver, you will also develop a simple Linux application which utilizes the device driver, providing the same functionality as seen in Lab 3. System Overview The hardware system you will use this week is that which was built in Lab 4. Figure 1 depicts a simplified view of the hardware and software you will create in this lab. Please note the hardware/software boundary in the figure below. Above this boundary, the blocks represent compiled code executing within the ARM processor. Below this boundary, the blocks represent hardware attached to the microprocessor. In our particular case, the hardware is a multiplication peripheral attached to the ARM Processor. Obviously, other hardware/software interactions exist in our system, but Figure 1 focuses on that which you will provide. Also 1

2 2 Laboratory Exercise #6 notice the existence of the kernel-space/user-space boundary. The kernel module represents the character device driver executing in kernel space, while the user application represents the code executing in user space, reading and writing to the device file, /dev/multiplier. The device file is not a standard file in the sense that it does not reside on a disk, rather it provides an interface for user applications to interact with the kernel. User Application /dev/multiplier user space kernel space kernel module multiplication peripheral software hardware Figure 1: Hardware/Software System Diagram Procedure 1. Compile a kernel module that reads and writes to the multiplication peripheral and prints the results to the kernel message buffer. (a) Create a lab6 directory and copy the modules directory from your lab5 directory to your lab6 directory. (b) Navigate to the modules directory and ensure that the Makefile points to the Linux kernel directory. 2 ECEN 449

3 Laboratory Exercise #6 3 (c) Create a new kernel module source file called multiply.c. (d) Copy the xparameters.h and xparameters ps.h files in to modules directory (e) Copy the following skeleton code into multiply.c : # i n c l u d e <l i n u x / module. h> / Needed by a l l modules / # i n c l u d e <l i n u x / k e r n e l. h> / Needed f o r KERN and p r i n t k / # i n c l u d e <l i n u x / i n i t. h> / Needed f o r i n i t and e x i t macros / # i n c l u d e <asm / i o. h> / Needed f o r IO r e a d s and w r i t e s / # i n c l u d e x p a r a m e t e r s. h / needed f o r p h y s i c a l a d d r e s s o f m u l t i p l i e r / / from x p a r a m e t e r s. h / # d e f i n e PHY ADDR XPAR MULTIPLY 0 S00 AXI BASEADDR / / p h y s i c a l a d d r e s s o f m u l t i p l i e r / s i z e o f p h y s i c a l a d d r e s s range f o r m u l t i p l y / # d e f i n e MEMSIZE XPAR MULTIPLY 0 S00 AXI HIGHADDR XPAR MULTIPLY 0 S00 AXI BASEADDR+1 void v i r t a d d r ; / / v i r t u a l a d d r e s s p o i n t i n g t o m u l t i p l i e r / T h i s f u n c t i o n i s run upon module load. T h i s i s where you s e t u p data s t r u c t u r e s and r e s e r v e r e s o u r c e s used by t h e module. / s t a t i c i n t i n i t m y i n i t ( void ) { / Linux k e r n e l s v e r s i o n o f p r i n t f / p r i n t k ( KERN INFO Mapping v i r t u a l a d d r e s s... \ n ) ; / map v i r t u a l a d d r e s s t o m u l t i p l i e r p h y s i c a l a d d r e s s / / / use ioremap / w r i t e 7 t o r e g i s t e r 0 / p r i n t k ( KERN INFO W r i t i n g a 7 t o r e g i s t e r 0\n ) ; i o w r i t e 3 2 ( 7, v i r t a d d r + 0 ) ; / / base a d d r e s s + o f f s e t / W r i t e 2 t o r e g i s t e r 1 / p r i n t k ( KERN INFO W r i t i n g a 2 t o r e g i s t e r 1\n ) ; / / use i o w r i t e 3 2 p r i n t k ( Read %d from r e g i s t e r 0\n, i o r e a d 3 2 ( v i r t a d d r + 0 ) ) ; p r i n t k ( Read %d from r e g i s t e r 1\n, \\ use i o r e a d 3 2 ) ; p r i n t k ( Read %d from r e g i s t e r 2\n, i o r e a d 3 2 ( v i r t a d d r + 8 ) ) ; / / A non 0 r e t u r n means i n i t m o d u l e f a i l e d ; module can t be loaded. return 0 ; / T h i s f u n c t i o n i s run j u s t p r i o r t o t h e module s removal from t h e s y s t e m. You s h o u l d r e l e a s e ALL r e s o u r c e s used by your module h ere ( o t h e r w i s e be p r e p a r e d f o r a r e b o o t ). / s t a t i c void e x i t m y e x i t ( void ) { ECEN 449 3

4 4 Laboratory Exercise #6 p r i n t k (KERN ALERT unmapping v i r t u a l a d d r e s s s p a c e.... \ n ) ; iounmap ( ( void ) v i r t a d d r ) ; / These d e f i n e i n f o t h a t can be d i s p l a y e d by modinfo / MODULE LICENSE( GPL ) ; MODULE AUTHOR( ECEN449 S t u d e n t ( and o t h e r s ) ) ; MODULE DESCRIPTION( Simple m u l t i p l i e r module ) ; / Here we d e f i n e which f u n c t i o n s we want t o use f o r i n i t i a l i z a t i o n and c l e a n u p / m o d u l e i n i t ( m y i n i t ) ; m o d u l e e x i t ( m y e x i t ) ; (f) Some required function calls have been left out of the code above. Fill in the necessary code. Consult Linux Device Drivers, 3rd Edition for help. Note: When running Linux on the ARM processor, your code is operating in virtual memory, and ioremap provides the physical to virtual address translation required to read and write to hardware from within virtual memory. iounmap reverses this mapping and is essentially the clean-up function for ioremap. (g) Add a printk statement to your initialization routine that prints the physical and virtual addresses of your multiplication peripheral to the kernel message buffer. (h) Edit your Makefile to compile multiply.c. Compile your kernel module. Do not for get to source the settings64.sh file. (i) Load the multiply.ko module onto the SD card and mount the card within the ZYBO Linux system using /mnt as the mount point. Consult Lab 5 if this is unclear. (j) Use insmod to load the multiply.ko kernel module into the ZYBO Linux kernel. Demonstrate your progress to the TA. 2. With a functioning kernel module that reads and writes to the multiplication peripheral, you are now ready to create a character device driver that provides applications running in user space access to your multiplication peripheral. (a) From within the modules directory, create a character device driver called multiplier.c using the following guidelines: Take a moment to examine my chardev.c, my chardev mem.c and the appropriate header files within /home/faculty/shared/ecen449/module examples/. Use the character device driver examples provided in Linux Device Drivers, 3rd Edition and the laboratory directory as a starting point for your device driver. 4 ECEN 449

5 Laboratory Exercise #6 5 Use the multiply.c kernel module created in Section 2 of this lab as a baseline for reading and writing to the multiplication peripheral and mapping the multiplication peripheral s physical address to virtual memory. Within the initialization routine, you must register your character device driver after the virtual memory mapping. The name of your device should be multiplier. Let Linux dynamically assign your device driver a major number and specify a minor number of 0. Print the major number to the kernel message buffer exactly as done in the examples provided. Be sure to handle device registration errors appropriately. You will be graded on this! In the exit routine, unregister the device driver before the virtual memory unmapping. For the open and close functions, do nothing except print to the kernel message buffer informing the user when the device is opened and closed. Read up on put user and get user in Linux Device Drivers, 3rd Edition as you will be using these system calls in your custom read and write functions. For the read function, your device driver must read bytes 0 through 11 within your peripheral s address range and put them into the user space buffer. Note that one of the parameters for the read function, length, specifies the number of bytes the user is requesting. Valid values for this parameter include 0 through 12. Your function should return the number of bytes actually transfered to user space (i.e. into the buffer pointed to by char* buf). You may use put user to transfer more than 1 byte at a time. For the write function, your device driver must copy bytes from the user buffer to kernel space using the system call get user to do the transfer and the variable length as a specification of how many bytes to transfer. Furthermore, the device driver must write those bytes to the multiplication peripheral. The return value of your write function should be similar to that of your read function, returning the number of bytes successfully written to your multiplication peripheral. Only write to valid memory locations (i.e. 0 through 7) within your peripheral s address space. (b) Modify the Makefile to compile multiplier.c and run >make ARCH=arm CROSS COMPILE=arm-xilinx-linux-gnueabiin the terminal to create the appropriate kernel module. (c) As with multiply.ko, load multiplier.ko into your ZYBO Linux system. (d) Use dmesg to view the output of the kernel module after it has been loaded. Follow the instructions provided within the provided example kernel modules to create the /dev/multiplier device node. Demonstrate your progress to the TA. 3. At this point, we need to create a user application that reads and writes to the device file, /dev/multiplier, to test our character device driver, and provides the required functionality similar to that seen in Lab 3. ECEN 449 5

6 6 Laboratory Exercise #6 (a) View the man pages on open, close, read, and write from within the CentOS workstation. You will use these system calls in your application code to read and write to the /dev/multiplier device file. Accessing the man pages can be done via the terminal. For example, to view the man pages on open, type man open in a terminal window. (b) Within the modules directory, create a source file called devtest.c and copy the following starter text into that file: # i n c l u d e <s y s / t y p e s. h> # i n c l u d e <s y s / s t a t. h> # i n c l u d e < f c n t l. h> # i n c l u d e <s t d i o. h> # i n c l u d e <u n i s t d. h> # i n c l u d e < s t d l i b. h> i n t main ( ) { unsigned i n t r e s u l t ; i n t fd ; / f i l e d e s c r i p t o r / i n t i, j ; / loop v a r i a b l e s / char i n p u t = 0 ; / open d e v i c e f i l e f o r r e a d i n g and w r i t i n g / / use open t o open / dev / m u l t i p l i e r / / h a n d l e e r r o r opening f i l e / i f ( fd == 1){ p r i n t f ( F a i l e d t o open d e v i c e f i l e!\ n ) ; return 1; while ( i n p u t!= q ){ / c o n t i n u e u n l e s s u s e r e n t e r e d q / f o r ( i =0; i <=16; i ++){ f o r ( j =0; j <=16; j ++){ / w r i t e v a l u e s t o r e g i s t e r s u s i n g char dev / / use w r i t e t o w r i t e i and j t o p e r i p h e r a l / / read i, j, and r e s u l t u s i n g char dev / / use read t o read from p e r i p h e r a l / / p r i n t u n s i g n e d i n t s t o s c r e e n / p r i n t f ( %u %u = %u, r e a d i, r e a d j, r e s u l t ) ; / v a l i d a t e r e s u l t / i f ( r e s u l t == ( i j ) ) p r i n t f ( R e s u l t C o r r e c t! ) ; e l s e p r i n t f ( R e s u l t I n c o r r e c t! ) ; 6 ECEN 449

7 Laboratory Exercise #6 7 / read from t e r m i n a l / i n p u t = g e t c h a r ( ) ; c l o s e ( fd ) ; return 0 ; (c) Complete the skeleton code provided above using the specified system calls. (d) Compile devtest.c by executing the following command in the terminal window under the modules directory: >arm-xilinx-linux-gnueabi-gcc -o devtest devtest.c (e) Copy the executable file, devtest, on to the SD card and execute the application by typing the following in the terminal within the SD card mount point directory: >./devtest (f) Examine the output as you hit the enter key from the terminal. Demonstrate your progress to the TA. Deliverables 1. [5 points.] Demo the working kernel module and device driver to the TA. Submit a lab report with the following items: 2. [5 points.] Correct format including an Introduction, Procedure, Results, and Conclusion. 3. [4 points.] Commented C files. 4. [2 points.] The output of the picocom terminal for parts 2 through 4 of lab. 5. [4 points.] Answers to the following questions: (a) Given that the multiplier hardware uses memory mapped I/O (the processor communicates with it through explicitly mapped physical addresses), why is the ioremap command required? (b) Do you expect that the overall (wall clock) time to perform a multiplication would be better in part 3 of this lab or in the original Lab 3 implementation? Why? (c) Contrast the approach in this lab with that of Lab 3. What are the benefits and costs associated with each approach? (d) Explain why it is important that the device registration is the last thing that is done in the initialization routine of a device driver. Likewise, explain why un-registering a device must happen first in the exit routine of a device driver. ECEN 449 7

ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University

ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University Prof. Sunil P. Khatri Lab exercise created and tested by: Abbas Fairouz, Ramu Endluri, He Zhou,

More information

ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University

ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University Prof. Mi Lu TA: Ehsan Rohani Laboratory Exercise #4 MIPS Assembly and Simulation

More information

On my honor, as an Aggie, I have neither given nor received unauthorized aid on this academic work

On my honor, as an Aggie, I have neither given nor received unauthorized aid on this academic work Lab 5 : Linking Name: Sign the following statement: On my honor, as an Aggie, I have neither given nor received unauthorized aid on this academic work 1 Objective The main objective of this lab is to experiment

More information

Administrivia. Course Objectives. Overview. Lecture Notes Week markem/cs333/ 2. Staff. 3. Prerequisites. 4. Grading. 1. Theory and application

Administrivia. Course Objectives. Overview. Lecture Notes Week markem/cs333/ 2. Staff. 3. Prerequisites. 4. Grading. 1. Theory and application Administrivia 1. markem/cs333/ 2. Staff 3. Prerequisites 4. Grading Course Objectives 1. Theory and application 2. Benefits 3. Labs TAs Overview 1. What is a computer system? CPU PC ALU System bus Memory

More information

Laboratory Exercise #11 A Simple Digital Combination Lock

Laboratory Exercise #11 A Simple Digital Combination Lock Laboratory Exercise #11 A Simple Digital Combination Lock ECEN 248: Introduction to Digital Design Department of Electrical and Computer Engineering Texas A&M University 2 Laboratory Exercise #11 1 Introduction

More information

Laboratory Exercise #10 An Introduction to High-Speed Addition

Laboratory Exercise #10 An Introduction to High-Speed Addition Laboratory Exercise #10 An Introduction to High-Speed Addition ECEN 248: Introduction to Digital Design Department of Electrical and Computer Engineering Texas A&M University 2 Laboratory Exercise #10

More information

ww.padasalai.net

ww.padasalai.net t w w ADHITHYA TRB- TET COACHING CENTRE KANCHIPURAM SUNDER MATRIC SCHOOL - 9786851468 TEST - 2 COMPUTER SCIENC PG - TRB DATE : 17. 03. 2019 t et t et t t t t UNIT 1 COMPUTER SYSTEM ARCHITECTURE t t t t

More information

ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University

ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University Prof. Mi Lu TA: Ehsan Rohani Laboratory Exercise #2 Behavioral, Dataflow, and

More information

An introduction to flash memory in Linux

An introduction to flash memory in Linux An introduction to flash memory in Linux Ezequiel Garcia Linux Developer Conference Brazil 2018 1/34 Agenda Flash memory: NAND and NOR Linux MTD subsystem Linux UBI/UBIFS systems

More information

Laboratory Exercise #8 Introduction to Sequential Logic

Laboratory Exercise #8 Introduction to Sequential Logic Laboratory Exercise #8 Introduction to Sequential Logic ECEN 248: Introduction to Digital Design Department of Electrical and Computer Engineering Texas A&M University 2 Laboratory Exercise #8 1 Introduction

More information

ISSP User Guide CY3207ISSP. Revision C

ISSP User Guide CY3207ISSP. Revision C CY3207ISSP ISSP User Guide Revision C Cypress Semiconductor 198 Champion Court San Jose, CA 95134-1709 Phone (USA): 800.858.1810 Phone (Intnl): 408.943.2600 http://www.cypress.com Copyrights Copyrights

More information

PHY 123 Lab 4 - Conservation of Energy

PHY 123 Lab 4 - Conservation of Energy 1 PHY 123 Lab 4 - Conservation of Energy The purpose of this lab is to verify the conservation of mechanical energy experimentally. Important! You need to print out the 1 page worksheet you find by clicking

More information

NINE CHOICE SERIAL REACTION TIME TASK

NINE CHOICE SERIAL REACTION TIME TASK instrumentation and software for research NINE CHOICE SERIAL REACTION TIME TASK MED-STATE NOTATION PROCEDURE SOF-700RA-8 USER S MANUAL DOC-025 Rev. 1.3 Copyright 2013 All Rights Reserved MED Associates

More information

ECE3510 Lab #5 PID Control

ECE3510 Lab #5 PID Control ECE3510 Lab #5 ID Control Objectives The objective of this lab is to study basic design issues for proportionalintegral-derivative control laws. Emphasis is placed on transient responses and steady-state

More information

CHEOPS Feasibility Checker Guidelines

CHEOPS Feasibility Checker Guidelines CHEOPS Feasibility Checker Guidelines Open a terminal and run the following commands (USERNAME as provided by the SOC - UNIGE): ssh X USERNAME@isdc-nx00.isdc.unige.ch ssh X USERNAME@tichpsmps00 /cheops_sw/mps_test/bin/mps_client

More information

Outline. policies for the first part. with some potential answers... MCS 260 Lecture 10.0 Introduction to Computer Science Jan Verschelde, 9 July 2014

Outline. policies for the first part. with some potential answers... MCS 260 Lecture 10.0 Introduction to Computer Science Jan Verschelde, 9 July 2014 Outline 1 midterm exam on Friday 11 July 2014 policies for the first part 2 questions with some potential answers... MCS 260 Lecture 10.0 Introduction to Computer Science Jan Verschelde, 9 July 2014 Intro

More information

Training Path FNT IT Infrastruktur Management

Training Path FNT IT Infrastruktur Management Training Path FNT IT Infrastruktur Management // TRAINING PATH: FNT IT INFRASTRUCTURE MANAGEMENT Training Path: FNT IT Infrastructure Management 2 9 // FNT COMMAND BASIC COURSE FNT Command Basic Course

More information

TitriSoft 2.5. Content

TitriSoft 2.5. Content Content TitriSoft 2.5... 1 Content... 2 General Remarks... 3 Requirements of TitriSoft 2.5... 4 Installation... 5 General Strategy... 7 Hardware Center... 10 Method Center... 13 Titration Center... 28

More information

ON SITE SYSTEMS Chemical Safety Assistant

ON SITE SYSTEMS Chemical Safety Assistant ON SITE SYSTEMS Chemical Safety Assistant CS ASSISTANT WEB USERS MANUAL On Site Systems 23 N. Gore Ave. Suite 200 St. Louis, MO 63119 Phone 314-963-9934 Fax 314-963-9281 Table of Contents INTRODUCTION

More information

I/O Devices. Device. Lecture Notes Week 8

I/O Devices. Device. Lecture Notes Week 8 I/O Devices CPU PC ALU System bus Memory bus Bus interface I/O bridge Main memory USB Graphics adapter I/O bus Disk other devices such as network adapters Mouse Keyboard Disk hello executable stored on

More information

Computer Architecture

Computer Architecture Computer Architecture QtSpim, a Mips simulator S. Coudert and R. Pacalet January 4, 2018..................... Memory Mapping 0xFFFF000C 0xFFFF0008 0xFFFF0004 0xffff0000 0x90000000 0x80000000 0x7ffff4d4

More information

PHY 123 Lab 6 - Angular Momentum

PHY 123 Lab 6 - Angular Momentum 1 PHY 123 Lab 6 - Angular Momentum (updated 10/17/13) The purpose of this lab is to study torque, moment of inertia, angular acceleration and the conservation of angular momentum. If you need the.pdf version

More information

Chemistry 14CL. Worksheet for the Molecular Modeling Workshop. (Revised FULL Version 2012 J.W. Pang) (Modified A. A. Russell)

Chemistry 14CL. Worksheet for the Molecular Modeling Workshop. (Revised FULL Version 2012 J.W. Pang) (Modified A. A. Russell) Chemistry 14CL Worksheet for the Molecular Modeling Workshop (Revised FULL Version 2012 J.W. Pang) (Modified A. A. Russell) Structure of the Molecular Modeling Assignment The molecular modeling assignment

More information

SRV02-Series Rotary Experiment # 7. Rotary Inverted Pendulum. Student Handout

SRV02-Series Rotary Experiment # 7. Rotary Inverted Pendulum. Student Handout SRV02-Series Rotary Experiment # 7 Rotary Inverted Pendulum Student Handout SRV02-Series Rotary Experiment # 7 Rotary Inverted Pendulum Student Handout 1. Objectives The objective in this experiment is

More information

URP 4273 Section 8233 Introduction to Planning Information Systems (3 Credits) Fall 2017

URP 4273 Section 8233 Introduction to Planning Information Systems (3 Credits) Fall 2017 URP 4273 Section 8233 Introduction to Planning Information Systems (3 Credits) Fall 2017 Instructor: Office Periods: Stanley Latimer 466 ARCH Phone: 352 294-1493 e-mail: latimer@geoplan.ufl.edu Monday

More information

Double Inverted Pendulum (DBIP)

Double Inverted Pendulum (DBIP) Linear Motion Servo Plant: IP01_2 Linear Experiment #15: LQR Control Double Inverted Pendulum (DBIP) All of Quanser s systems have an inherent open architecture design. It should be noted that the following

More information

Orbit Support Pack for Excel. user manual

Orbit Support Pack for Excel. user manual Orbit Support Pack for Excel user manual Information in this document is subject to change without notice. Companies, names and data used in examples herein are fictitious unless noted otherwise. No part

More information

In-System Serial Programming (ISSP) Guide

In-System Serial Programming (ISSP) Guide CY3207ISSP In-System Serial Programming (ISSP) Guide Spec. # 001-15301 Rev. ** Cypress Semiconductor 198 Champion Court San Jose, CA 95134-1709 Phone (USA): 800.858.1810 Phone (Intnl): 408.943.2600 http://www.cypress.com

More information

Department of Electrical and Computer Engineering The University of Texas at Austin

Department of Electrical and Computer Engineering The University of Texas at Austin Department of Electrical and Computer Engineering The University of Texas at Austin EE 360N, Fall 2004 Yale Patt, Instructor Aater Suleman, Huzefa Sanjeliwala, Dam Sunwoo, TAs Exam 1, October 6, 2004 Name:

More information

Data byte 0 Data byte 1 Data byte 2 Data byte 3 Data byte 4. 0xA Register Address MSB data byte Data byte Data byte LSB data byte

Data byte 0 Data byte 1 Data byte 2 Data byte 3 Data byte 4. 0xA Register Address MSB data byte Data byte Data byte LSB data byte SFP200 CAN 2.0B Protocol Implementation Communications Features CAN 2.0b extended frame format 500 kbit/s Polling mechanism allows host to determine the rate of incoming data Registers The SFP200 provides

More information

Quick Start Guide New Mountain Visit our Website to Register Your Copy (weatherview32.com)

Quick Start Guide New Mountain Visit our Website to Register Your Copy (weatherview32.com) Quick Start Guide New Mountain Visit our Website to Register Your Copy (weatherview32.com) Page 1 For the best results follow all of the instructions on the following pages to quickly access real-time

More information

DISCRETE RANDOM VARIABLES EXCEL LAB #3

DISCRETE RANDOM VARIABLES EXCEL LAB #3 DISCRETE RANDOM VARIABLES EXCEL LAB #3 ECON/BUSN 180: Quantitative Methods for Economics and Business Department of Economics and Business Lake Forest College Lake Forest, IL 60045 Copyright, 2011 Overview

More information

URP 4273 Section 3058 Survey Of Planning Information Systems (3 Credits) Spring 2017

URP 4273 Section 3058 Survey Of Planning Information Systems (3 Credits) Spring 2017 URP 4273 Section 3058 Survey Of Planning Information Systems (3 Credits) Spring 2017 Instructor: Office Periods: Stanley Latimer 466 ARCH Phone: 352 294-1493 e-mail: latimer@geoplan.ufl.edu Monday Thursday,

More information

Compiling Techniques

Compiling Techniques Lecture 11: Introduction to 13 November 2015 Table of contents 1 Introduction Overview The Backend The Big Picture 2 Code Shape Overview Introduction Overview The Backend The Big Picture Source code FrontEnd

More information

CSE370: Introduction to Digital Design

CSE370: Introduction to Digital Design CSE370: Introduction to Digital Design Course staff Gaetano Borriello, Brian DeRenzi, Firat Kiyak Course web www.cs.washington.edu/370/ Make sure to subscribe to class mailing list (cse370@cs) Course text

More information

OHW2013 workshop. An open source PCIe device virtualization framework

OHW2013 workshop. An open source PCIe device virtualization framework OHW2013 workshop An open source PCIe device virtualization framework Plan Context and objectives Design and implementation Future directions Questions Context - ESRF and the ISDD electronic laboratory

More information

Laboratory 3 Measuring Capacitor Discharge with the MicroBLIP

Laboratory 3 Measuring Capacitor Discharge with the MicroBLIP Laboratory 3 page 1 of 6 Laboratory 3 Measuring Capacitor Discharge with the MicroBLIP Introduction In this lab, you will use the MicroBLIP in its Data Acquisition Mode to sample the voltage over time

More information

Output Module (last updated 8/27/2015)

Output Module (last updated 8/27/2015) Output Module (last updated 8/27/2015) Goals: Provide a common output format and content from all modeling groups for Tier 2 files. Provide a data file that is compatible with the GFDL Vortex Tracker program

More information

BCMB/CHEM 8190 Lab Exercise Using Maple for NMR Data Processing and Pulse Sequence Design March 2012

BCMB/CHEM 8190 Lab Exercise Using Maple for NMR Data Processing and Pulse Sequence Design March 2012 BCMB/CHEM 8190 Lab Exercise Using Maple for NMR Data Processing and Pulse Sequence Design March 2012 Introduction Maple is a powerful collection of routines to aid in the solution of mathematical problems

More information

Inverted Pendulum System

Inverted Pendulum System Introduction Inverted Pendulum System This lab experiment consists of two experimental procedures, each with sub parts. Experiment 1 is used to determine the system parameters needed to implement a controller.

More information

Geodatabase Best Practices. Dave Crawford Erik Hoel

Geodatabase Best Practices. Dave Crawford Erik Hoel Geodatabase Best Practices Dave Crawford Erik Hoel Geodatabase best practices - outline Geodatabase creation Data ownership Data model Data configuration Geodatabase behaviors Data integrity and validation

More information

Lab 2 Worksheet. Problems. Problem 1: Geometry and Linear Equations

Lab 2 Worksheet. Problems. Problem 1: Geometry and Linear Equations Lab 2 Worksheet Problems Problem : Geometry and Linear Equations Linear algebra is, first and foremost, the study of systems of linear equations. You are going to encounter linear systems frequently in

More information

Economic and Social Council Distr. LIMITED

Economic and Social Council Distr. LIMITED UNITED NATIONS E Economic and Social Council Distr. LIMITED E/CONF.74/L.91 26 August 1982 ENGLISH ONLY Riurth United Nations Conference on the Standardization of Geographical Names Geneva, 24 August to

More information

n P! " # $ % & % & ' ( ) * + % $, $ -. $ -..! " # ) & % $/ $ - 0 1 2 3 4 5 6 7 3 8 7 9 9 : 3 ; 1 7 < 9 : 5 = > : 9? @ A B C D E F G HI J G H K D L M N O P Q R S T U V M Q P W X X Y W X X Z [ Y \ ] M

More information

WeatherHawk Weather Station Protocol

WeatherHawk Weather Station Protocol WeatherHawk Weather Station Protocol Purpose To log atmosphere data using a WeatherHawk TM weather station Overview A weather station is setup to measure and record atmospheric measurements at 15 minute

More information

ST-Links. SpatialKit. Version 3.0.x. For ArcMap. ArcMap Extension for Directly Connecting to Spatial Databases. ST-Links Corporation.

ST-Links. SpatialKit. Version 3.0.x. For ArcMap. ArcMap Extension for Directly Connecting to Spatial Databases. ST-Links Corporation. ST-Links SpatialKit For ArcMap Version 3.0.x ArcMap Extension for Directly Connecting to Spatial Databases ST-Links Corporation www.st-links.com 2012 Contents Introduction... 3 Installation... 3 Database

More information

Rotary Motion Servo Plant: SRV02. Rotary Experiment #01: Modeling. SRV02 Modeling using QuaRC. Student Manual

Rotary Motion Servo Plant: SRV02. Rotary Experiment #01: Modeling. SRV02 Modeling using QuaRC. Student Manual Rotary Motion Servo Plant: SRV02 Rotary Experiment #01: Modeling SRV02 Modeling using QuaRC Student Manual SRV02 Modeling Laboratory Student Manual Table of Contents 1. INTRODUCTION...1 2. PREREQUISITES...1

More information

MS4525HRD (High Resolution Digital)

MS4525HRD (High Resolution Digital) MS4525HRD (High Resolution Digital) Integrated Digital Pressure Sensor (24-bit Σ ADC) Fast Conversion Down to 1 ms Low Power, 1 µa (standby < 0.15 µa) Supply Voltage: 1.8 to 3.6V Pressure Range: 1 to 150

More information

Lab 2: Photon Counting with a Photomultiplier Tube

Lab 2: Photon Counting with a Photomultiplier Tube Lab 2: Photon Counting with a Photomultiplier Tube 1 Introduction 1.1 Goals In this lab, you will investigate properties of light using a photomultiplier tube (PMT). You will assess the quantitative measurements

More information

PHY 111L Activity 2 Introduction to Kinematics

PHY 111L Activity 2 Introduction to Kinematics PHY 111L Activity 2 Introduction to Kinematics Name: Section: ID #: Date: Lab Partners: TA initials: Objectives 1. Introduce the relationship between position, velocity, and acceleration 2. Investigate

More information

Hands-on Lab 3. System Identification with Experimentally Acquired Data

Hands-on Lab 3. System Identification with Experimentally Acquired Data Hands-on Lab 3 System Identification with Experimentally Acquired Data Recall that the course objective is to control the angle, rise time and overshoot of a suspended motor-prop. Towards this, the two

More information

PAID INVOICE TAX REPORT

PAID INVOICE TAX REPORT PAID INVOICE TAX REPORT The documentation in this publication is provided pursuant to a Sales and Licensing Contract for the Prophet 21 System entered into by and between Prophet 21 and the Purchaser to

More information

Athena Visual Software, Inc. 1

Athena Visual Software, Inc. 1 Athena Visual Studio Visual Kinetics Tutorial VisualKinetics is an integrated tool within the Athena Visual Studio software environment, which allows scientists and engineers to simulate the dynamic behavior

More information

Exp. #2-4 : Measurement of Characteristics of Magnetic Fields by Using Single Coils and a Computer Interface

Exp. #2-4 : Measurement of Characteristics of Magnetic Fields by Using Single Coils and a Computer Interface PAGE 1/17 Exp. #2-4 : Measurement of Characteristics of Magnetic Fields by Using Single Coils and a Computer Interface Student ID Major Name Team No. Experiment Lecturer Student's Mentioned Items Experiment

More information

,- # (%& ( = 0,% % <,( #, $ <<,( > 0,% #% ( - + % ,'3-% & '% #% <,( #, $ <<,(,9 (% +('$ %(- $'$ & " ( (- +' $%(& 2,#. = '%% ($ (- +' $ '%("

,- # (%& ( = 0,% % <,( #, $ <<,( > 0,% #% ( - + % ,'3-% & '% #% <,( #, $ <<,(,9 (% +('$ %(- $'$ &  ( (- +' $%(& 2,#. = '%% ($ (- +' $ '%( FEATURES!" #$$ % %&' % '( $ %( )$*++$ '(% $ *++$ %(%,- *(% (./ *( #'% # *( 0% ( *( % #$$ *( '( + 2' %( $ '( 2! '3 ((&!( *( 4 '3.%" / '3 3.% 7" 28" 9' 9,*: $ 9,*: $% (+'( / *(.( # ( 2(- %3 # $((% # ;' '3$-,(

More information

High-Performance Scientific Computing

High-Performance Scientific Computing High-Performance Scientific Computing Instructor: Randy LeVeque TA: Grady Lemoine Applied Mathematics 483/583, Spring 2011 http://www.amath.washington.edu/~rjl/am583 World s fastest computers http://top500.org

More information

C101-E112. BioSpec-nano. Shimadzu Spectrophotometer for Life Science

C101-E112. BioSpec-nano. Shimadzu Spectrophotometer for Life Science C101-E112 BioSpec-nano Shimadzu Spectrophotometer for Life Science Power of small. BioSpec-nano BioSpec-nano Shimadzu Spectrophotometer for Life Science Quick and Simple Nucleic Acid Quantitation Drop-and-Click

More information

Timing Results of a Parallel FFTsynth

Timing Results of a Parallel FFTsynth Purdue University Purdue e-pubs Department of Computer Science Technical Reports Department of Computer Science 1994 Timing Results of a Parallel FFTsynth Robert E. Lynch Purdue University, rel@cs.purdue.edu

More information

Motion II. Goals and Introduction

Motion II. Goals and Introduction Motion II Goals and Introduction As you have probably already seen in lecture or homework, and if you ve performed the experiment Motion I, it is important to develop a strong understanding of how to model

More information

Chapter: 22. Visualization: Making INPUT File and Processing of Output Results

Chapter: 22. Visualization: Making INPUT File and Processing of Output Results Chapter: 22 Visualization: Making INPUT File and Processing of Output Results Keywords: visualization, input and output structure, molecular orbital, electron density. In the previous chapters, we have

More information

Antonio Falabella. 3 rd nternational Summer School on INtelligent Signal Processing for FrontIEr Research and Industry, September 2015, Hamburg

Antonio Falabella. 3 rd nternational Summer School on INtelligent Signal Processing for FrontIEr Research and Industry, September 2015, Hamburg INFN - CNAF (Bologna) 3 rd nternational Summer School on INtelligent Signal Processing for FrontIEr Research and Industry, 14-25 September 2015, Hamburg 1 / 44 Overview 1 2 3 4 5 2 / 44 to Computing The

More information

ISIS/Draw "Quick Start"

ISIS/Draw Quick Start ISIS/Draw "Quick Start" Click to print, or click Drawing Molecules * Basic Strategy 5.1 * Drawing Structures with Template tools and template pages 5.2 * Drawing bonds and chains 5.3 * Drawing atoms 5.4

More information

Static and Kinetic Friction

Static and Kinetic Friction Ryerson University - PCS 120 Introduction Static and Kinetic Friction In this lab we study the effect of friction on objects. We often refer to it as a frictional force yet it doesn t exactly behave as

More information

Planning Softproviding Meat User Documentation

Planning Softproviding Meat User Documentation Great ideas are always simple Softproviding simply makes them happen. Planning Softproviding Meat User Documentation Version: 1.00 Date: 24 August 2017 Release: v5.50 Softproviding AG Riehenring 175 CH-4058

More information

7600 Series Routers Adjacency Allocation Method

7600 Series Routers Adjacency Allocation Method 7600 Series Routers Adjacency Allocation Method Document ID: 118393 Contributed by Amit Goyal and Ruchir Jain, Cisco TAC Engineers. Nov 06, 2014 Contents Introduction Background Information Adjacency Entry

More information

Chem Page IX - 1 LAB MANUAL Differential Scanning Calorimetry 09_dsc131.docx EXPERIMENT IX

Chem Page IX - 1 LAB MANUAL Differential Scanning Calorimetry 09_dsc131.docx EXPERIMENT IX Chem 366-3 Page IX - 1 LAB MANUAL Differential Scanning Calorimetry 09_dsc131.docx EXPERIMENT IX KINETICS OF DECOMPOSITION OF SODIUM BICARBONATE; A DIFFERENTIAL SCANNING CALORIMETRY EXPERIMENT 1. Purpose

More information

LED Lighting Facts: Manufacturer Guide

LED Lighting Facts: Manufacturer Guide LED Lighting Facts: Manufacturer Guide 2018 1 P a g e L E D L i g h t i n g F a c t s : M a n u f a c t u r e r G u i d e TABLE OF CONTENTS Section 1) Accessing your account and managing your products...

More information

Environmental Systems Research Institute

Environmental Systems Research Institute Introduction to ArcGIS ESRI Environmental Systems Research Institute Redlands, California 2 ESRI GIS Development Arc/Info (coverage model) Versions 1-7 from 1980 1999 Arc Macro Language (AML) ArcView (shapefile

More information

Collisions and conservation laws

Collisions and conservation laws (ta initials) first name (print) last name (print) brock id (ab17cd) (lab date) Experiment 4 Collisions and conservation laws Prelab preparation Print a copy of this experiment to bring to your scheduled

More information

EBIS-PIC 2D. 2D EBIS Simulation Code. Version 0.1. Copyright ( ) January FAR-TECH, Inc Science Center Dr., Ste 150. San Diego CA 92121

EBIS-PIC 2D. 2D EBIS Simulation Code. Version 0.1. Copyright ( ) January FAR-TECH, Inc Science Center Dr., Ste 150. San Diego CA 92121 EBIS-PIC 2D 2D EBIS Simulation Code Version 0.1 Copyright ( ) January 2017 by 10350 Science Center Dr., Ste 150 San Diego CA 92121 Phone 858-455-6655 Email support@far-tech.com URL http://www.far-tech.com

More information

User's Guide. DISTO online. Leica Geosystems

User's Guide. DISTO online. Leica Geosystems User's Guide DISTO online Leica Geosystems Copyright 2001 by PMS Photo Mess Systeme AG. All rights reserved. This manual describes the versions 2.x of the program DISTO online. PMS PHOTO-MESS-SYSTEME AG

More information

A clock designed in close consultation with people living with Dementia.

A clock designed in close consultation with people living with Dementia. 1. Product Name Day Clock 2. Product Code 55787 3. Colour As shown 4. Brief Description A clock designed in close consultation with people living with Dementia. 5. Contents 1 x Day Clock 6. Snoezelen Stimulations

More information

Socket Programming. Daniel Zappala. CS 360 Internet Programming Brigham Young University

Socket Programming. Daniel Zappala. CS 360 Internet Programming Brigham Young University Socket Programming Daniel Zappala CS 360 Internet Programming Brigham Young University Sockets, Addresses, Ports Clients and Servers 3/33 clients request a service from a server using a protocol need an

More information

SuperCELL Data Programmer and ACTiSys IR Programmer User s Guide

SuperCELL Data Programmer and ACTiSys IR Programmer User s Guide SuperCELL Data Programmer and ACTiSys IR Programmer User s Guide This page is intentionally left blank. SuperCELL Data Programmer and ACTiSys IR Programmer User s Guide The ACTiSys IR Programmer and SuperCELL

More information

Temperature Measurement and First-Order Dynamic Response *

Temperature Measurement and First-Order Dynamic Response * OpenStax-CNX module: m13774 1 Temperature Measurement and First-Order Dynamic Response * Luke Graham This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License 2.0

More information

At the end of the exam you must copy that folder onto a USB stick. Also, you must your files to the instructor.

At the end of the exam you must copy that folder onto a USB stick. Also, you must  your files to the instructor. Before you begin your work, please create a new file folder on your computer. The name of the folder should be YourLastName_YourFirstName For example, if your name is John Smith your folder should be named

More information

1D-HAM. Coupled Heat, Air and Moisture Transport in Multi-layered Wall Structures. Manual with brief theory and an example. Version 2.

1D-HAM. Coupled Heat, Air and Moisture Transport in Multi-layered Wall Structures. Manual with brief theory and an example. Version 2. 1D-HAM Coupled Heat, Air and Moisture Transport in Multi-layered Wall Structures. Manual with brief theory and an example. Version 2.0 30 t=70 days (1680 h) 100 Temperatures ( C) v (g/m³) 25 20 15 10 5

More information

ArcGIS Earth for Enterprises DARRON PUSTAM ARCGIS EARTH CHRIS ANDREWS 3D

ArcGIS Earth for Enterprises DARRON PUSTAM ARCGIS EARTH CHRIS ANDREWS 3D ArcGIS Earth for Enterprises DARRON PUSTAM ARCGIS EARTH CHRIS ANDREWS 3D ArcGIS Earth is ArcGIS Earth is a lightweight globe desktop application that helps you explore any part of the world and investigate

More information

IFM Chemistry Computational Chemistry 2010, 7.5 hp LAB2. Computer laboratory exercise 1 (LAB2): Quantum chemical calculations

IFM Chemistry Computational Chemistry 2010, 7.5 hp LAB2. Computer laboratory exercise 1 (LAB2): Quantum chemical calculations Computer laboratory exercise 1 (LAB2): Quantum chemical calculations Introduction: The objective of the second computer laboratory exercise is to get acquainted with a program for performing quantum chemical

More information

OECD QSAR Toolbox v.3.3

OECD QSAR Toolbox v.3.3 OECD QSAR Toolbox v.3.3 Step-by-step example on how to predict the skin sensitisation potential of a chemical by read-across based on an analogue approach Outlook Background Objectives Specific Aims Read

More information

CSCE 155N Fall Homework Assignment 2: Stress-Strain Curve. Assigned: September 11, 2012 Due: October 02, 2012

CSCE 155N Fall Homework Assignment 2: Stress-Strain Curve. Assigned: September 11, 2012 Due: October 02, 2012 CSCE 155N Fall 2012 Homework Assignment 2: Stress-Strain Curve Assigned: September 11, 2012 Due: October 02, 2012 Note: This assignment is to be completed individually - collaboration is strictly prohibited.

More information

INTRODUCTION. This is not a full c-programming course. It is not even a full 'Java to c' programming course.

INTRODUCTION. This is not a full c-programming course. It is not even a full 'Java to c' programming course. C PROGRAMMING 1 INTRODUCTION This is not a full c-programming course. It is not even a full 'Java to c' programming course. 2 LITTERATURE 3. 1 FOR C-PROGRAMMING The C Programming Language (Kernighan and

More information

Royal Mail Postcode Delivery Points With Postcode Sector Delivery Points Summary

Royal Mail Postcode Delivery Points With Postcode Sector Delivery Points Summary Royal Mail Postcode Delivery Points With Postcode Sector Delivery Points Summary 2014.08 PRODUCT GUIDE Information in this document is subject to change without notice and does not represent a commitment

More information

Lecture 4: Process Management

Lecture 4: Process Management Lecture 4: Process Management Process Revisited 1. What do we know so far about Linux on X-86? X-86 architecture supports both segmentation and paging. 48-bit logical address goes through the segmentation

More information

RTS2 Remote Telescope System

RTS2 Remote Telescope System RTS2 Remote Telescope System Petr Kubánek IPL, Universitat de Válencia IAA CSIC Granada Financial support kindly provided by Programa de Ayudas FPI del Ministerio de Ciencia e Innovación (Subprograma FPI-MICINN)

More information

ES205 Analysis and Design of Engineering Systems: Lab 1: An Introductory Tutorial: Getting Started with SIMULINK

ES205 Analysis and Design of Engineering Systems: Lab 1: An Introductory Tutorial: Getting Started with SIMULINK ES205 Analysis and Design of Engineering Systems: Lab 1: An Introductory Tutorial: Getting Started with SIMULINK What is SIMULINK? SIMULINK is a software package for modeling, simulating, and analyzing

More information

Assembly Programming through Arduino

Assembly Programming through Arduino 1 Assembly Programming through Arduino G V V Sharma Contents 1 Components 1 2 Seven Segment Display 1 2.1 Hardware Setup....... 1 2.2 Software Setup........ 2 2.3 Controlling the Display... 2 3 Display

More information

A GUI FOR EVOLVE ZAMS

A GUI FOR EVOLVE ZAMS A GUI FOR EVOLVE ZAMS D. R. Schlegel Computer Science Department Here the early work on a new user interface for the Evolve ZAMS stellar evolution code is presented. The initial goal of this project is

More information

Application example. Measuring Force Sensors Rigid. Six series Nano, Mini, Gamma, Delta, Theta, Omega. Range of measurement, force ± 36 N..

Application example. Measuring Force Sensors Rigid. Six series Nano, Mini, Gamma, Delta, Theta, Omega. Range of measurement, force ± 36 N.. FT Six series Nano, Mini, Gamma, Delta, Theta, Omega Range of measurement, force ± 36 N.. ± 40000 N Range of measurement, moment ± 0.5 Nm.. ± 6000 Nm Application example Robot-supported chamfering of round

More information

OECD QSAR Toolbox v.3.4

OECD QSAR Toolbox v.3.4 OECD QSAR Toolbox v.3.4 Step-by-step example on how to predict the skin sensitisation potential approach of a chemical by read-across based on an analogue approach Outlook Background Objectives Specific

More information

Possible Prelab Questions.

Possible Prelab Questions. Possible Prelab Questions. Read Lab 2. Study the Analysis section to make sure you have a firm grasp of what is required for this lab. 1) A car is travelling with constant acceleration along a straight

More information

MAT 343 Laboratory 6 The SVD decomposition and Image Compression

MAT 343 Laboratory 6 The SVD decomposition and Image Compression MA 4 Laboratory 6 he SVD decomposition and Image Compression In this laboratory session we will learn how to Find the SVD decomposition of a matrix using MALAB Use the SVD to perform Image Compression

More information

Mark Redekopp, All rights reserved. Lecture 1 Slides. Intro Number Systems Logic Functions

Mark Redekopp, All rights reserved. Lecture 1 Slides. Intro Number Systems Logic Functions Lecture Slides Intro Number Systems Logic Functions EE 0 in Context EE 0 EE 20L Logic Design Fundamentals Logic Design, CAD Tools, Lab tools, Project EE 357 EE 457 Computer Architecture Using the logic

More information

ncounter PlexSet Data Analysis Guidelines

ncounter PlexSet Data Analysis Guidelines ncounter PlexSet Data Analysis Guidelines NanoString Technologies, Inc. 530 airview Ave North Seattle, Washington 98109 USA Telephone: 206.378.6266 888.358.6266 E-mail: info@nanostring.com Molecules That

More information

Using the Stock Hydrology Tools in ArcGIS

Using the Stock Hydrology Tools in ArcGIS Using the Stock Hydrology Tools in ArcGIS This lab exercise contains a homework assignment, detailed at the bottom, which is due Wednesday, October 6th. Several hydrology tools are part of the basic ArcGIS

More information

O P E R A T I N G M A N U A L

O P E R A T I N G M A N U A L OPERATING MANUAL WeatherJack OPERATING MANUAL 1-800-645-1061 The baud rate is 2400 ( 8 bits, 1 stop bit, no parity. Flow control = none) To make sure the unit is on line, send an X. the machine will respond

More information

University of Minnesota Nano Center Standard Operating Procedure

University of Minnesota Nano Center Standard Operating Procedure University of Minnesota Nano Center Standard Operating Procedure Equipment Name: Zeta Potential Analyzer Model: Stabino Location: PAN 185 Badger Name: Not on Badger Revision Number: 0-Inital release Revisionist:

More information

A short status. August 20, 2015

A short status. August 20, 2015 A short status August 20, 2015 1 2 3 4 problem Problem Statement Execute the system with maximum performance while sustaining device temperature constraints. Device temperature constraints may refer to

More information

Lan Performance LAB Ethernet : CSMA/CD TOKEN RING: TOKEN

Lan Performance LAB Ethernet : CSMA/CD TOKEN RING: TOKEN Lan Performance LAB Ethernet : CSMA/CD TOKEN RING: TOKEN Ethernet Frame Format 7 b y te s 1 b y te 2 o r 6 b y te s 2 o r 6 b y te s 2 b y te s 4-1 5 0 0 b y te s 4 b y te s P r e a m b le S ta r t F r

More information

TECDIS and TELchart ECS Weather Overlay Guide

TECDIS and TELchart ECS Weather Overlay Guide 1 of 24 TECDIS and TELchart ECS provides a very advanced weather overlay feature, using top quality commercial maritime weather forecast data available as a subscription service from Jeppesen Marine. The

More information