Chapter 6: System Integration

Size: px
Start display at page:

Download "Chapter 6: System Integration"

Transcription

1 Chapter 6: System Integration 6.1 Introduction This is a group task which is undertaken when all the individual tasks have been successfully completed. ssuming this, the state of the system in terms of working components should be: 1. C program for the image processing on the M 2. Video Capture system and Frame llocator in Verilog 3. C program for I2C Master communication from M FPG 4. C program for I2C Slave communication on PIC 5. C program for stepper motor control from PIC 6. C program for servo motor control In addition, you are supplied with the following Verilog components which will be placed in the FPG on the M : 1. Open Source Verilog for an I2C Master 2. VDU Controller which continuously reads a frame from memory and displays it on a monitor 2. n rbiter which determines which source unit (M, Video Capture System or VDU Controller) is granted a memory access in the next time clock period. The relationship of the hardware components on the M side is shown in Figure 6.1. The connection to the PIC hardware is via the I2C lines from the I2C Master. The VDEC is physically mounted on top of the M. camera image VDEC YCrCb Video Capture M emulator (jimulator) & debugger (Komodo) I 2 C Master VDU Controller F M E LL O C TO B I T E memory FPG I 2 C monitor To Camera Box Figure 6.1: Components of M Side of iimp Hardware 1

2 The PIC hardware is illustrated in Figure 6.2. Exerciser Breakout PIC Microcontroller Motor Drive camera output (to VDEC ) I2C (to M ) Camera Box camera Figure 6.2: PIC Hardware 6.2 System Development The integration needs to be incremental, starting with just a couple of tasks (say) and when the combination is working, add the next feature and get that working etc. In that way, it is easier to identify the source of errors when these occur. Fault finding when using the M is fairly limited unless you want to scrabble around with M code, so in this case you may want to do further stand-alone modelling and testing to pinpoint the error. If this results in changes to the hardware and software then you may need to go through all the integration steps again to make sure that in fixing one fault you haven t broken something else. The system development outlined below envisages the integration in parallel of the PIC system and the M system, i.e. ll the software required on the PIC (Figure 6.2) to act as an I2C slave and to drive the servo and stepper motors. ll the hardware for the FPG including the Video Capture, Frame llocator, rbiter, I2C Master and VDU Controller. ll the software to act as an I2C master and to perform the image processing. Note that different C programs need to be used at different stages in the development and this will involve (different) changes to the stand-alone C programs developed. Once the PIC system and M systems are operating correctly, then the PIC and M systems can be connected together for the final integration stage. Here an essential first task is to compute a scaling factor for the conversion of pixel movement to angular movement in tenths of a degree. The calibration needs to be initiated via the I2C master on the M side but the scaling 2

3 factor can be incorporated into the C program at either the PIC or M end. Incorporation at the PIC end is suggested because of a lack of support at the M end for division and multiplication and no support for floating point numbers M System Development This occurs in parallel with the PIC system development described in section fter Step 2 is successfully completed, the design transfers to the M hardware of Figure 6.1. The steps described below should be carried out in the order given. 1. a. The Video Grabbing and Image Capture Verilog modules (excluding the Frame llocator) should be combined and tested using the vid_capture_testbench to display on the virtual screen a red and blue checker pattern with a yellow bounding box one pixel wide one pixel in from the outer boundary. b. Before synthesising the entire logic to be downloaded onto the FPG, a check needs to be done to ensure that the modules designed for the Video Capture system and the Frame llocator are synthesisable. so start Cadence by typing start_cadence COMP20592 c. In the icds window, choose Tools->Verilog Integration->NC-Verilog. d. In the Virtuso Verilog Environment window, use the Browse button to enter COMP20592 for Library, <module name e.g. vid_add> for Cell, and functional for the View. Put run1 for the un Directory and press COMP20592 in the Library box. e. Initialise the design (running man icon). Generate a netlist with the second icon down (three ticks) (answering yes if asked about renetlisting) and check for correctness in the icds window. f. In the Verilog Environment window, select Commands->Xilinx Synthesis. This brings up a XILINX COMPILE window which details the various operations performed in synthesising the design. The report will tell you that Ngdbuild has failed as would be expected. However you should inspect the opening sections of the report which relate to synthesising the block. In particular, warnings or errors in the HDL nalysis section need to be addressed as these mean the design will (probably) not work as expected when downloaded onto the. Note that in synthesising, delays in the module are ignored. You should modify your design and re-run the synthesis until the HDL nalysis section of the report no longer has warnings or errors. ny warnings in the HDL Synthesis eport which follows the HDL nalysis should also be noted to make sure these can be ignored. g) epeat this synthesis process for each module of the Video Capture system and Frame llocator. Finally check that the vid_capture cell is synthesisable. Synthesising the Verilog Description of the System 2. When satisfied of the correct operation and that the description of the Video Capture system and Frame llocator is synthesisable, the combined Verilog description of the TL (egister Transfer Level) needs to be synthesised. This is the process of using CD tools to convert the Verilog description into the logic gates and flip flops available on the targeted implementation process, i.e. the elements of the FPG. The logic to be downloaded comprises the I2C master, the Video Capture system, the Frame llocator, the rbiter and the VDU Controller. The procedure is as follows: a. Start Cadence by typing start_cadence COMP20592 b. In the icds window, choose Tools->Library Manager c. From the Library Manager window, select COMP20592 from Library, processor from Cell, functional from View, and then File->Open to bring up a Verilog description and then Save this and close. This is necessary so that the top level module of the I2C master contained within processor is picked up correctly later on. 3

4 d. Back in the Library Manager window, select COMP20592 from Library, _test from Cell, schematic from View, and then File->Open to obtain a Schematic Editing window containing a schematic of the blocks of the entire system to be placed on the FPG. e. In the Schematic Editing window, select Xilinx->Simulation. This brings up the Verilog Environment window. Initialise the design (running man icon). Generate a netlist with the second icon down (three ticks) (answering yes to renetlisting) and check for correctness in the icds window. f. In the Verilog Environment window, select Commands->Xilinx Synthesis. This brings up a XILINX COMPILE window which details the various operations performed in synthesising the design. Look at the error report at the end of this to check that synthesis has been successfully completed and that the bit file <cell name>.bit has been generated. When it has, you can exit from Cadence. 3. On the M hardware, connect the camera output on the back of the camera box to the VDEC (coaxial cable) and the monitor to the M. 4. Initially prepare just a C program of the I2C initialisation of the VDEC. Powering up the M and Camera Box 5. The M and Camera Box are powered up by: a. switch on the monitor b. switch on +5V to the M (oversized plug i.e. a wall wart ) c. switch on the +12V to the camera box (oversized plug i.e. a wall wart ) d. press eset button on M Compiling the C program and linking it 6. Get the object code for code containing SWI operations by: a. In a terminal window, set a path which points to the M development tools by typing: PTH=$PTH:/home/cadtools5/gnuarm-3.4.3/bin b. Produce an object file init.o from init.s initialising the M by typing: arm-elf-gcc -c $COMP20592/gcc_support/init.s -o init.o c. The I2C library of functions contains swi functions and so requires a 3-stage process to obtain object code. ssuming the library is named i2c.c, in your working directory type: arm-elf-gcc -S <list of all C code files containing SWIs separated by a space> -o i2c.s $COMP20592/gcc-support/swi_pp i2c.s arm-elf-gcc -c -o3 pp_i2c.s -o i2c.o The first command generates an M assembly code file i2c.s from all the C programs and -S stops it being assembled. The second modifies the M assembler code to include SWI instructions, producing a file pp_i2c.s (pp denotes post processing). The third produces object code i2c.o from the modified M code file. 7. ny C program not containing SWIs, e.g. the VDEC initialisation sequence VDEC_init.c, can now be directly compiled into object code by typing: arm-elf-gcc -I $COMP20592/gcc_support -c VDEC_init.c -o VDEC_init.o 8. If there are any other C code files not containing swi functions, then Step 7 needs to be repeated for each C code file. 9. The different object code files now have to be linked by typing: arm-elf-ld -T $COMP20592/gcc-support/lscr init.o i2c.o VDEC_init.o -o <name of program>.elf lscr refers to a link script for allocating memory to object files. The output of this command is a.elf file which Komodo can run. Downloading the FPG configuration and the compiled object file 10. In a terminal window, start Komodo by typing: new_start_komodo & 4

5 but don t load the compiled program just yet. 11. Download the FPG logic by: a. In the Komodo window, use the Browse button associated with Load to find ~/Cadence/COMP20592/xilinx_compile/<cell name>.bit and press Load to download the FPG configuration. b. In the Komodo window, use the browse button to select the object program from the Cadence/COMP20592 directory <name of program>.elf from your working directory. c. In Komodo window, press the eset button d. In Komodo window press the un button Further C Program Development on the M With a C program which just initialises the VDEC registers, if the system is operating correctly, then the camera image should be captured in the store and displayed by the monitor. When operational, the next step is to add the C program for the image processing to the VDEC initialisation code. It is suggested that freeze_frame() be used so that intermediate results from the image processing are written back to the memory on the M using write_frame() (just as in the emulation environment) to act as a visual check that correct processing is occurring, that the largest object is being identified and pixel shifting to centre the largest object is being accurately performed. On the real hardware, unfreeze_frame() has the effect of enabling the displayed frame to move on. The new C program should of course be compiled and linked as described in Steps 6 to 9. If the M is already powered and initialised as described, then it is only necessary to download and run the new C program as described in Step 11b,c and d. When the image processing manipulation is believed to be correct, then the C program needs further development. This will remove write_frame requests and instead set up communication with the PIC via the I2C master. Write requests to the PIC request a horizontal and vertical camera position in pixels, while a read request to the PIC will result in a byte being returned indicating the status of the PIC I2C slave as shown in Figure 6.3. spare spare y_high y_low x_high x_low y motor in motion x motor in motion D7 D6 D5 D4 D3 D2 D1 D0 Figure 6.3: PIC Status egister The C code in the M needs to: 1. Initialise the registers on the VDEC. 2. equest motor centralisation (by sending x = y = 0 for the motor positions) 3. Perform a calibration sequence (see later) so that the pixel to 10*degrees conversion factor can be computed and incorporated into the scaling performed by the PIC on movement positions arriving from the I2C master. 3. Perform image processing so that the pixel movement continually centres the largest object in an image or tracks a slowly moving object. Here camera position requests are sent to the PIC via the I2C lines and the status monitored until the motors are no longer in motion. The image displayed on the monitor should give an indication as to what the system is doing. gain this new C program needs to be compiled and linked (steps 6 to 9) PIC System Development 5

6 This occurs in parallel with the M system development described in section The PIC hardware is assumed to be set up as in Figure 6.2. The steps involved are: 1. The individual C programs for driving the stepper and servo motors are combined into a single C program. This program must set the appropriate bits in a register which forms the PIC status for the I2C slave, i.e. the motors in motion bits, and bits indicating reaching the high and low x and y limits. It is suggested that the soft limits are set at x = 1200and y = 450. The C program is then compiled and downloaded onto the PIC. 2. The PIC system is tested for correct operation and in particular that the stepper and servomotors move simultaneously, i.e. the use of a timer rather than a delay loop in the program. 3. The I2C slave code is combined with the motors code, compile and downloaded to the PIC. 4. The Test Interface Board in modes 4 and 5 is used to verify I2C slave operations and motor movement. 5. When correctly operations, the software should be downloaded onto the PIC and all hardware brought up to CS. 6.3 System Integration The PIC hardware (Figure 6.2) should be connected to the M hardware (Figure 6.1). The camera output at the back of the camera box should be connected into the VDEC (coaxial cable). The I2C interface should be connected between the back of the camera box and the M (J45 plug/socket). The I2C cable has been designed so that it can be plugged in either way round! The system should be powered up as follows: a. switch on the monitor b. switch on +5V to the M (oversized plug i.e. a wall wart ) c. switch on the +12V to the camera box (oversized plug i.e. a wall wart ); this causes the motors to centralise d. switch on +12V to the PIC electronics; again this causes the motors to centralise e. press eset button on the PIC f. press eset button on M ssuming the C program to be run on the M is compiled and linked (steps 6 to 9), the next step is to download the FPG configuration and then the object file. So, follow steps 10 and 11 in section Calibration to Obtain Scaling Factor fter initialising the VDEC registers and centralising the motors, calibration needs to be undertaken.the motor movement is based on a camera movement specified as 10*degrees while the image processing computes camera movement in pixels. scaling factor is required so that pixel movement at the M end are converted to tenths of a degree at the PIC end. The procedure below suggests a way to achieve this and requires knowledge of the angle at which the high and low soft limits are set in the PIC s I2C status line. ssuming that the scaling factor from pixels to10*degrees is the same in the vertical and horizontal directions, then the calibration only needs to be done for one axis. Limits of 1200(horizontal) and 450(vertical) are assumed. From the centralised position of x = 0 y = 0, the I2C master sends horizontal camera positions, h, in increments of 1 and monitors when the x_high bit in the status line goes high; as an additional check, the PIC counts the numbers of steps this takes which could be displayed on the 6

7 LEDs of the Exerciser. The scaling factor is then 1200/h. s an additional check, the motors could then be re-centralised and the exercise repeated but this time decrementing h starting from 0. gain, the master should monitor when x_low goes high to give a scaling factor of /h (h is now -ve) and this of course should be identical to the previously calculated scaling factor (again using the Exerciser to check that the number of steps is consistent). To check the scaling factor in the y-direction, the motors are now centralised again and the exercise repeated but this time incrementing and then decrementing the vertical value, v, sent to the PIC starting from 0 both times and stopping when y_high and y_low go high. The vertical scaling factor should be 450/v and -450/v (v is now -ve). gain these should be identical to each other and consistent with the horizontal scaling factor. convention could be devised to automatically recognise that the master was in calibration mode. This would enable the PIC to automatically include it in the program without the need for post-programming. The maximum pixel movement reflecting the size of an image is 640 horizontally and 480vertically. So values outside this range could signal the start and end of calibration. For example y = 0, x = 0x7FFF (max +ve number) could indicate that x-calibration is starting; and this could be indicated back to the I2C master by bit 6 in the PIC I2C status line going high. If calibrating, PIC would then know that when was reached that the scaling factor was 1200/h and similarly that when was reached that the scaling factor was -1200/ h. The finish of x calibration would be signalled by sending y = 0, x = 0x8000 (max -ve number). The vertical scaling factor could be undertaken in a similar way with y = 0x7FFF, x = 0 signalling the start of y calibration and y = 0x8000, x = 0 signalling its end; again indicating this in the status line using bit 7 would be helpful. Following calibration, normal processing of the image received from the camera should proceed. Useful Facilities in Komodo You may find the following facilities useful if you are unlucky enough to have to start debugging M code. Special -> Symbol Window e.g. unfreeze_frame places a breakpoint at that address causing Komodo to halt at that point Special -> Simple breakpoints also sets breakpoints or a symbol can be typed in 7

An Introduction to Komodo

An Introduction to Komodo An Introduction to Komodo The Komodo debugger and simulator is the low-level debugger used in the Digital Systems Laboratory. Like all debuggers, Komodo allows you to run your programs under controlled

More information

EE183 LAB TUTORIAL. Introduction. Projects. Design Entry

EE183 LAB TUTORIAL. Introduction. Projects. Design Entry EE183 LAB TUTORIAL Introduction You will be using several CAD tools to implement your designs in EE183. The purpose of this lab tutorial is to introduce you to the tools that you will be using, Xilinx

More information

Embest IDE Pro for ARM 2005

Embest IDE Pro for ARM 2005 Embest IDE Pro for ARM 2005 1.1 About Embest IDE Pro for ARM2005 Embest IDE Pro for ARM2005 is a new release of Embest IDE for ARM based on 2004 version. It is an Integrated Development Environment for

More information

Laboratory Exercise 3 Comparative Analysis of Hardware and Emulation Forms of Signed 32-Bit Multiplication

Laboratory Exercise 3 Comparative Analysis of Hardware and Emulation Forms of Signed 32-Bit Multiplication Laboratory Exercise 3 Comparative Analysis of Hardware and Emulation Forms of Signed 32-Bit Multiplication Introduction All processors offer some form of instructions to add, subtract, and manipulate data.

More information

CSE P567 - Winter 2010 Lab 1 Introduction to FGPA CAD Tools

CSE P567 - Winter 2010 Lab 1 Introduction to FGPA CAD Tools CSE P567 - Winter 2010 Lab 1 Introduction to FGPA CAD Tools This is a tutorial introduction to the process of designing circuits using a set of modern design tools. While the tools we will be using (Altera

More information

Lab 3-2: Exploring the Heap

Lab 3-2: Exploring the Heap Lab 3-2: Exploring the Heap Objectives Become familiar with the Windows Embedded CE 6.0 heap Prerequisites Completed Lab 2-1 Estimated time to complete this lab: 30 minutes Lab Setup To complete this lab,

More information

Start Active-HDL. Create a new workspace TUTORIAL #1 CREATING AND SIMULATING SIMPLE SCHEMATICS

Start Active-HDL. Create a new workspace TUTORIAL #1 CREATING AND SIMULATING SIMPLE SCHEMATICS Introduction to Active-HDL TUTORIAL #1 CREATING AND SIMULATING SIMPLE SCHEMATICS This tutorial will introduce the tools and techniques necessary to design a basic schematic. The goal of this tutorial is

More information

Lab 1: FPGA Physical Layout

Lab 1: FPGA Physical Layout Lab 1: FPGA Physical Layout University of California, Berkeley Department of Electrical Engineering and Computer Sciences EECS150 Components and Design Techniques for Digital Systems John Wawrzynek, James

More information

Engineering 1630 Fall Simulating XC9572XL s on the ENGN1630 CPLD-II Board

Engineering 1630 Fall Simulating XC9572XL s on the ENGN1630 CPLD-II Board Engineering 1630 Fall 2016 Simulating XC9572XL s on the ENGN1630 CPLD-II Board You will use the Aldec Active-HDL software for the required timing simulation of the XC9572XL CPLD programmable logic chips

More information

CS354 gdb Tutorial Written by Chris Feilbach

CS354 gdb Tutorial Written by Chris Feilbach CS354 gdb Tutorial Written by Chris Feilbach Purpose This tutorial aims to show you the basics of using gdb to debug C programs. gdb is the GNU debugger, and is provided on systems that

More information

and 32 bit for 32 bit. If you don t pay attention to this, there will be unexpected behavior in the ISE software and thing may not work properly!

and 32 bit for 32 bit. If you don t pay attention to this, there will be unexpected behavior in the ISE software and thing may not work properly! This tutorial will show you how to: Part I: Set up a new project in ISE 14.7 Part II: Implement a function using Schematics Part III: Simulate the schematic circuit using ISim Part IV: Constraint, Synthesize,

More information

Note that FLIP is an Atmel program supplied by Crossware with Atmel s permission.

Note that FLIP is an Atmel program supplied by Crossware with Atmel s permission. INTRODUCTION This manual will guide you through the first steps of getting the SE-8051ICD running with the Crossware 8051 Development Suite and the Atmel Flexible In-System Programming system (FLIP). The

More information

Chapter 1 Overview of Digital Systems Design

Chapter 1 Overview of Digital Systems Design Chapter 1 Overview of Digital Systems Design SKEE2263 Digital Systems Mun im/ismahani/izam {munim@utm.my,e-izam@utm.my,ismahani@fke.utm.my} February 8, 2017 Why Digital Design? Many times, microcontrollers

More information

Recommended Design Techniques for ECE241 Project Franjo Plavec Department of Electrical and Computer Engineering University of Toronto

Recommended Design Techniques for ECE241 Project Franjo Plavec Department of Electrical and Computer Engineering University of Toronto Recommed Design Techniques for ECE241 Project Franjo Plavec Department of Electrical and Computer Engineering University of Toronto DISCLAIMER: The information contained in this document does NOT contain

More information

Digital Design Review

Digital Design Review Digital Design Review Why? You never learned how - traffic light controllers You have forgotten or are rusty You have bad habits (ad hoc, asynchronous design, old technology) You need a method that will

More information

Outline Introduction System development Video capture Image processing Results Application Conclusion Bibliography

Outline Introduction System development Video capture Image processing Results Application Conclusion Bibliography Real Time Video Capture and Image Processing System using FPGA Jahnvi Vaidya Advisors: Dr. Yufeng Lu and Dr. In Soo Ahn 4/30/2009 Outline Introduction System development Video capture Image processing

More information

Xilinx ChipScope ICON/VIO/ILA Tutorial

Xilinx ChipScope ICON/VIO/ILA Tutorial Xilinx ChipScope ICON/VIO/ILA Tutorial The Xilinx ChipScope tools package has several modules that you can add to your Verilog design to capture input and output directly from the FPGA hardware. These

More information

Tools Basics. Getting Started with Renesas Development Tools R8C/3LX Family

Tools Basics. Getting Started with Renesas Development Tools R8C/3LX Family Getting Started with Renesas Development Tools R8C/3LX Family Description: The purpose of this lab is to allow a user new to the Renesas development environment to quickly come up to speed on the basic

More information

Programming (1.0hour)

Programming (1.0hour) COMPETITOR S INSTRUCTION:- Attempt all questions: Where applicable circle the letter that indicates the correct answer. Otherwise answer questions as instructed D1.1 Embedded code is used widely in modern

More information

E85: Digital Design and Computer Engineering Lab 2: FPGA Tools and Combinatorial Logic Design

E85: Digital Design and Computer Engineering Lab 2: FPGA Tools and Combinatorial Logic Design E85: Digital Design and Computer Engineering Lab 2: FPGA Tools and Combinatorial Logic Design Objective The purpose of this lab is to learn to use Field Programmable Gate Array (FPGA) tools to simulate

More information

MPLAB SIM. MPLAB IDE Software Simulation Engine Microchip Technology Incorporated MPLAB SIM Software Simulation Engine

MPLAB SIM. MPLAB IDE Software Simulation Engine Microchip Technology Incorporated MPLAB SIM Software Simulation Engine MPLAB SIM MPLAB IDE Software Simulation Engine 2004 Microchip Technology Incorporated MPLAB SIM Software Simulation Engine Slide 1 Welcome to this web seminar on MPLAB SIM, the software simulator that

More information

Digital Electronics & Computer Engineering (E85)

Digital Electronics & Computer Engineering (E85) Digital Electronics & Computer Engineering (E85) Lab 4: Thunderbird Turn Signal Introduction In this lab, you will design a finite state machine to control the taillights of a 1965 Ford Thunderbird 1 and

More information

101-1 Under-Graduate Project Digital IC Design Flow

101-1 Under-Graduate Project Digital IC Design Flow 101-1 Under-Graduate Project Digital IC Design Flow Speaker: Ming-Chun Hsiao Adviser: Prof. An-Yeu Wu Date: 2012/9/25 ACCESS IC LAB Outline Introduction to Integrated Circuit IC Design Flow Verilog HDL

More information

switch case Logic Syntax Basics Functionality Rules Nested switch switch case Comp Sci 1570 Introduction to C++

switch case Logic Syntax Basics Functionality Rules Nested switch switch case Comp Sci 1570 Introduction to C++ Comp Sci 1570 Introduction to C++ Outline 1 Outline 1 Outline 1 switch ( e x p r e s s i o n ) { case c o n s t a n t 1 : group of statements 1; break ; case c o n s t a n t 2 : group of statements 2;

More information

Overview of Microcontroller and Embedded Systems

Overview of Microcontroller and Embedded Systems UNIT-III Overview of Microcontroller and Embedded Systems Embedded Hardware and Various Building Blocks: The basic hardware components of an embedded system shown in a block diagram in below figure. These

More information

Introduction to Embedded System Design using Zynq

Introduction to Embedded System Design using Zynq Introduction to Embedded System Design using Zynq Zynq Vivado 2015.2 Version This material exempt per Department of Commerce license exception TSU Objectives After completing this module, you will be able

More information

Copyright 2014 Xilinx

Copyright 2014 Xilinx IP Integrator and Embedded System Design Flow Zynq Vivado 2014.2 Version This material exempt per Department of Commerce license exception TSU Objectives After completing this module, you will be able

More information

Synthesis and APR Tools Tutorial

Synthesis and APR Tools Tutorial Synthesis and APR Tools Tutorial (Last updated: Oct. 26, 2008) Introduction This tutorial will get you familiarized with the design flow of synthesizing and place and routing a Verilog module. All the

More information

Programmable Logic Design Techniques I

Programmable Logic Design Techniques I PHY 440 Lab14: Programmable Logic Design Techniques I The design of digital circuits is a multi-step process. It starts with specifications describing what the circuit must do. Defining what a circuit

More information

Laboratory 6. - Using Encounter for Automatic Place and Route. By Mulong Li, 2013

Laboratory 6. - Using Encounter for Automatic Place and Route. By Mulong Li, 2013 CME 342 (VLSI Circuit Design) Laboratory 6 - Using Encounter for Automatic Place and Route By Mulong Li, 2013 Reference: Digital VLSI Chip Design with Cadence and Synopsys CAD Tools, Erik Brunvand Background

More information

University of Florida EEL 3701 Dr. Eric M. Schwartz Madison Emas, TA Department of Electrical & Computer Engineering Revision 1 5-Jun-17

University of Florida EEL 3701 Dr. Eric M. Schwartz Madison Emas, TA Department of Electrical & Computer Engineering Revision 1 5-Jun-17 Page 1/14 Example Problem Given the logic equation Y = A*/B + /C, implement this equation using a two input AND gate, a two input OR gate and two inverters under the Quartus environment. Upon completion

More information

DEVELOPMENT OF A DEBUG MODULE FOR A FPGA-BASED MICROCONTROLLER. Rainer Bermbach, Martin Kupfer

DEVELOPMENT OF A DEBUG MODULE FOR A FPGA-BASED MICROCONTROLLER. Rainer Bermbach, Martin Kupfer DEVELOPMENT OF A DEBUG MODULE FOR A FPGA-BASED MICROCONTROLLER Rainer Bermbach, Martin Kupfer University of Applied Sciences Braunschweig/Wolfenbuettel, Germany Abstract: Description of the development

More information

Laboratory Exercise 3

Laboratory Exercise 3 Laboratory Exercise 3 Latches, Flip-flops, and egisters The purpose of this exercise is to investigate latches, flip-flops, and registers. Part I Altera FPGAs include flip-flops that are available for

More information

SECTION 5: STRUCTURED PROGRAMMING IN MATLAB. ENGR 112 Introduction to Engineering Computing

SECTION 5: STRUCTURED PROGRAMMING IN MATLAB. ENGR 112 Introduction to Engineering Computing SECTION 5: STRUCTURED PROGRAMMING IN MATLAB ENGR 112 Introduction to Engineering Computing 2 Conditional Statements if statements if else statements Logical and relational operators switch case statements

More information

Chapter 2 Getting Hands on Altera Quartus II Software

Chapter 2 Getting Hands on Altera Quartus II Software Chapter 2 Getting Hands on Altera Quartus II Software Contents 2.1 Installation of Software... 20 2.2 Setting Up of License... 21 2.3 Creation of First Embedded System Project... 22 2.4 Project Building

More information

MPLAB X IDE PROJECTS Microchip Technology Incorporated. All Rights Reserved DEV Slide 68

MPLAB X IDE PROJECTS Microchip Technology Incorporated. All Rights Reserved DEV Slide 68 MPLAB X IDE PROJECTS 2013 Microchip Technology Incorporated. All Rights Reserved. 17002 DEV Slide 68 MPLAB X IDE Projects What is a project? Definition A Project is defined by a collection of files within

More information

Transforming Objects and Components

Transforming Objects and Components 4 Transforming Objects and Components Arrow selection Lasso selection Paint selection Move Rotate Scale Universal Manipulator Soft Modification Show Manipulator Last tool used Figure 4.1 Maya s manipulation

More information

Arduino Uno. Power & Interface. Arduino Part 1. Introductory Medical Device Prototyping. Digital I/O Pins. Reset Button. USB Interface.

Arduino Uno. Power & Interface. Arduino Part 1. Introductory Medical Device Prototyping. Digital I/O Pins. Reset Button. USB Interface. Introductory Medical Device Prototyping Arduino Part 1, http://saliterman.umn.edu/ Department of Biomedical Engineering, University of Minnesota Arduino Uno Power & Interface Reset Button USB Interface

More information

Quartus II Tutorial. September 10, 2014 Quartus II Version 14.0

Quartus II Tutorial. September 10, 2014 Quartus II Version 14.0 Quartus II Tutorial September 10, 2014 Quartus II Version 14.0 This tutorial will walk you through the process of developing circuit designs within Quartus II, simulating with Modelsim, and downloading

More information

Tutorial: Working with the Xilinx tools 14.4

Tutorial: Working with the Xilinx tools 14.4 Tutorial: Working with the Xilinx tools 14.4 This tutorial will show you how to: Part I: Set up a new project in ISE Part II: Implement a function using Schematics Part III: Implement a function using

More information

Creating LEF File. Abstract Generation: Creating LEF Tutorial File Release Date: 01/13/2004. Export GDS:

Creating LEF File. Abstract Generation: Creating LEF Tutorial File Release Date: 01/13/2004. Export GDS: Creating LEF Tutorial 1-1 - Creating LEF File Abstract Generation: Export GDS: Abstract generator comes as a part of the Silicon Ensemble package. As such, it cannot directly read ICFB library databases.

More information

ChipScope Inserter flow. To see the Chipscope added from XPS flow, please skip to page 21. For ChipScope within Planahead, please skip to page 23.

ChipScope Inserter flow. To see the Chipscope added from XPS flow, please skip to page 21. For ChipScope within Planahead, please skip to page 23. In this demo, we will be using the Chipscope using three different flows to debug the programmable logic on Zynq. The Chipscope inserter will be set up to trigger on a bus transaction. This bus transaction

More information

Digital Circuit Design Using Xilinx ISE Tools

Digital Circuit Design Using Xilinx ISE Tools Digital Circuit Design Using Xilinx ISE Tools Poras T. Balsara and Prashant Vallur Table of Contents 1. Introduction 2. Programmable logic devices: FPGA and CPLD 3. Creating a new project in Xilinx Foundation

More information

None. MICROCONTROLLERS III

None. MICROCONTROLLERS III MICROCONTROLLERS III PREREQUISITES: MODULE 10: MICROCONTROLLERS II. OUTLINE OF MODULE 11: What you will learn about in this Module: Use of a much more powerful microcontroller: the PIC16F877 In-circuit

More information

University of Florida EEL 3701 Dr. Eric M. Schwartz Department of Electrical & Computer Engineering Revision 0 12-Jun-16

University of Florida EEL 3701 Dr. Eric M. Schwartz Department of Electrical & Computer Engineering Revision 0 12-Jun-16 Page 1/14 Quartus Tutorial with Basic Graphical Gate Entry and Simulation Example Problem Given the logic equation Y = A*/B + /C, implement this equation using a two input AND gate, a two input OR gate

More information

Homework 5: Circuit Design and Theory of Operation Due: Friday, February 24, at NOON

Homework 5: Circuit Design and Theory of Operation Due: Friday, February 24, at NOON Homework 5: Circuit Design and Theory of Operation Due: Friday, February 24, at NOON Team Code Name: Motion Tracking Laser Platform Group No.: 9 Team Member Completing This Homework: David Kristof NOTE:

More information

Quartus II Version 14.0 Tutorial Created September 10, 2014; Last Updated January 9, 2017

Quartus II Version 14.0 Tutorial Created September 10, 2014; Last Updated January 9, 2017 Quartus II Version 14.0 Tutorial Created September 10, 2014; Last Updated January 9, 2017 This tutorial will walk you through the process of developing circuit designs within Quartus II, simulating with

More information

Don t expect to be able to write and debug your code during the lab session.

Don t expect to be able to write and debug your code during the lab session. EECS150 Spring 2002 Lab 4 Verilog Simulation Mapping UNIVERSITY OF CALIFORNIA AT BERKELEY COLLEGE OF ENGINEERING DEPARTMENT OF ELECTRICAL ENGINEERING AND COMPUTER SCIENCE Lab 4 Verilog Simulation Mapping

More information

Introduction. About this tutorial. How to use this tutorial

Introduction. About this tutorial. How to use this tutorial Basic Entry & not About this tutorial This tutorial consists of an introduction to creating simple circuits on an FPGA using a variety of methods. There are two ways to create the circuit: using or by

More information

CPE/EE 427, CPE 527, VLSI Design I: Tutorial #4, Standard cell design flow (from verilog to layout, 8-bit accumulator)

CPE/EE 427, CPE 527, VLSI Design I: Tutorial #4, Standard cell design flow (from verilog to layout, 8-bit accumulator) CPE/EE 427, CPE 527, VLSI Design I: Tutorial #4, Standard cell design flow (from verilog to layout, 8-bit accumulator) Joel Wilder, Aleksandar Milenkovic, ECE Dept., The University of Alabama in Huntsville

More information

Contacts, presence, and IM

Contacts, presence, and IM Want to shut your virtual office door? Presence is automatically set based on your Outlook calendar but you can change it temporarily if you want to. Presence status is a quick way for other people see

More information

CAD for VLSI Design - I. Lecture 21 V. Kamakoti and Shankar Balachandran

CAD for VLSI Design - I. Lecture 21 V. Kamakoti and Shankar Balachandran CAD for VLSI Design - I Lecture 21 V. Kamakoti and Shankar Balachandran Overview of this Lecture Understanding the process of Logic synthesis Logic Synthesis of HDL constructs Logic Synthesis What is this?

More information

SKP16C26 Tutorial 1 Software Development Process using HEW. Renesas Technology America Inc.

SKP16C26 Tutorial 1 Software Development Process using HEW. Renesas Technology America Inc. SKP16C26 Tutorial 1 Software Development Process using HEW Renesas Technology America Inc. 1 Overview The following tutorial is a brief introduction on how to develop and debug programs using HEW (Highperformance

More information

Video-based Data Acquisition for Circadian Biology

Video-based Data Acquisition for Circadian Biology Big Brother Big Brother... 1 Video-based Data Acquisition for Circadian Biology... 2 USB INSTALLATION... 2 1) Install the Cameras... 3 2) Install the ACT-711 USB Interface... 3 3) Install the National

More information

EE 361L Digital Systems and Computer Design Laboratory

EE 361L Digital Systems and Computer Design Laboratory University of Hawaii Department of Electrical Engineering EE 361L Digital Systems and Computer Design Laboratory Timing Simulation Version 1.0 10/10/2003 This document is a quick tutorial on performing

More information

2.) Open you re my documents folder, and then open you re my pictures folder. Now create a new folder called mask advert.

2.) Open you re my documents folder, and then open you re my pictures folder. Now create a new folder called mask advert. PhotoShop Help File Sleeping mask advert lesson 1.) Open adobe Photoshop. 2.) Open you re my documents folder, and then open you re my pictures folder. Now create a new folder called mask advert. 3.) From

More information

Xilinx Vivado/SDK Tutorial

Xilinx Vivado/SDK Tutorial Xilinx Vivado/SDK Tutorial (Laboratory Session 1, EDAN15) Flavius.Gruian@cs.lth.se March 21, 2017 This tutorial shows you how to create and run a simple MicroBlaze-based system on a Digilent Nexys-4 prototyping

More information

V8-uRISC 8-bit RISC Microprocessor AllianceCORE Facts Core Specifics VAutomation, Inc. Supported Devices/Resources Remaining I/O CLBs

V8-uRISC 8-bit RISC Microprocessor AllianceCORE Facts Core Specifics VAutomation, Inc. Supported Devices/Resources Remaining I/O CLBs V8-uRISC 8-bit RISC Microprocessor February 8, 1998 Product Specification VAutomation, Inc. 20 Trafalgar Square Nashua, NH 03063 Phone: +1 603-882-2282 Fax: +1 603-882-1587 E-mail: sales@vautomation.com

More information

Autonomous Rubik's Cube Solver Using Image Processing

Autonomous Rubik's Cube Solver Using Image Processing Autonomous Rubik's Cube Solver Using Image Processing Harshad Sawhney Sakshi Sinha Anurag Lohia Prashant Jalan Priyanka Harlalka Abstract Rubik's cube is a 3-D mechanical puzzle in which a pivot mechanism

More information

Part II: Laboratory Exercise

Part II: Laboratory Exercise SYDIC-Training Course on Digital Systems Testing and Design for Testability Part II: Laboratory Exercise Gert Jervan (gerje@ida.liu.se) Embedded Systems Laboratory (ESLAB) Linköping University March, 2003

More information

Chapter 9: Integration of Full ASIP and its FPGA Implementation

Chapter 9: Integration of Full ASIP and its FPGA Implementation Chapter 9: Integration of Full ASIP and its FPGA Implementation 9.1 Introduction A top-level module has been created for the ASIP in VHDL in which all the blocks have been instantiated at the Register

More information

Final Project: LC-3 Simulator

Final Project: LC-3 Simulator Final Project: LC-3 Simulator Due Date: Friday 4/27/2018 11:59PM; No late handins This is the final project for this course. It is a simulator for LC-3 computer from the Patt and Patel book. As you work

More information

Blackfin Online Learning & Development

Blackfin Online Learning & Development Presentation Title: Multimedia Starter Kit Presenter Name: George Stephan Chapter 1: Introduction Sub-chapter 1a: Overview Chapter 2: Blackfin Starter Kits Sub-chapter 2a: What is a Starter Kit? Sub-chapter

More information

Section 2: Getting Started with a FPU Demo Project using EK-LM4F232

Section 2: Getting Started with a FPU Demo Project using EK-LM4F232 Stellaris ARM Cortex TM -M4F Training Floating Point Unit Section 2: Getting Started with a FPU Demo Project using EK-LM4F232 Stellaris ARM Cortex TM -M4F Training: Floating Point Unit Section 2 Page 1

More information

Basics of Adobe Premiere

Basics of Adobe Premiere Basics of Adobe Premiere Getting started: The first thing you ll see when you open Adobe Premiere is a window asking to open a project or start a new one. Let s start a new one. (Images from CS6 version,

More information

Visual Studio.NET. Although it is possible to program.net using only the command OVERVIEW OF VISUAL STUDIO.NET

Visual Studio.NET. Although it is possible to program.net using only the command OVERVIEW OF VISUAL STUDIO.NET Chapter. 03 9/17/01 6:08 PM Page 35 Visual Studio.NET T H R E E Although it is possible to program.net using only the command line compiler, it is much easier and more enjoyable to use Visual Studio.NET.

More information

This lesson introduces Blender, covering the tools and concepts necessary to set up a minimal scene in virtual 3D space.

This lesson introduces Blender, covering the tools and concepts necessary to set up a minimal scene in virtual 3D space. 3D Modeling with Blender: 01. Blender Basics Overview This lesson introduces Blender, covering the tools and concepts necessary to set up a minimal scene in virtual 3D space. Concepts Covered Blender s

More information

Introduction to STA using PT

Introduction to STA using PT Introduction to STA using PT Learning Objectives Given the design, library and script files, your task will be to successfully perform STA using the PrimeTime GUI and generate reports. After completing

More information

Place & Route: Using Silicon Ensemble

Place & Route: Using Silicon Ensemble Place & Route: Using Silicon Ensemble Introduction In a typical digital design flow, hardware description language is used to model a design and verify desired behavior. Once the desired functionality

More information

University of California, Davis Department of Electrical and Computer Engineering. EEC180B DIGITAL SYSTEMS Spring Quarter 2018

University of California, Davis Department of Electrical and Computer Engineering. EEC180B DIGITAL SYSTEMS Spring Quarter 2018 University of California, Davis Department of Electrical and Computer Engineering EEC180B DIGITAL SYSTEMS Spring Quarter 2018 LAB 2: FPGA Synthesis and Combinational Logic Design Objective: This lab covers

More information

Tutorial for Verilog Synthesis Lab (Part 2)

Tutorial for Verilog Synthesis Lab (Part 2) Tutorial for Verilog Synthesis Lab (Part 2) Before you synthesize your code, you must absolutely make sure that your verilog code is working properly. You will waste your time if you synthesize a wrong

More information

FT-UNSHADES credits. UNiversity of Sevilla HArdware DEbugging System.

FT-UNSHADES credits. UNiversity of Sevilla HArdware DEbugging System. FT-UNSHADES Microelectronic Presentation Day February, 4th, 2004 J. Tombs & M.A. Aguirre jon@gte.esi.us.es, aguirre@gte.esi.us.es AICIA-GTE of The University of Sevilla (SPAIN) FT-UNSHADES credits UNiversity

More information

ENGN 1630: CPLD Simulation Fall ENGN 1630 Fall Simulating XC9572XLs on the ENGN1630 CPLD-II Board Using Xilinx ISim

ENGN 1630: CPLD Simulation Fall ENGN 1630 Fall Simulating XC9572XLs on the ENGN1630 CPLD-II Board Using Xilinx ISim ENGN 1630 Fall 2018 Simulating XC9572XLs on the ENGN1630 CPLD-II Board Using Xilinx ISim You will use the Xilinx ISim simulation software for the required timing simulation of the XC9572XL CPLD programmable

More information

Addressing Verification Bottlenecks of Fully Synthesized Processor Cores using Equivalence Checkers

Addressing Verification Bottlenecks of Fully Synthesized Processor Cores using Equivalence Checkers Addressing Verification Bottlenecks of Fully Synthesized Processor Cores using Equivalence Checkers Subash Chandar G (g-chandar1@ti.com), Vaideeswaran S (vaidee@ti.com) DSP Design, Texas Instruments India

More information

Setting Up the Fotosizer Software

Setting Up the Fotosizer Software Setting Up the Fotosizer Software N.B. Fotosizer does not change your original files it just makes copies of them that have been resized and renamed. It is these copies you need to use on your website.

More information

ESE 150 Lab 08: Machine Level Language

ESE 150 Lab 08: Machine Level Language LAB 08 In this lab we will gain an understanding of the instruction- level implementation of computation on a microprocessor by: 1. Using Arduino to perform the Fourier Transform on sampled data in the

More information

v. 9.0 GMS 9.0 Tutorial UTEXAS Dam with Seepage Use SEEP2D and UTEXAS to model seepage and slope stability of a earth dam Prerequisite Tutorials None

v. 9.0 GMS 9.0 Tutorial UTEXAS Dam with Seepage Use SEEP2D and UTEXAS to model seepage and slope stability of a earth dam Prerequisite Tutorials None v. 9.0 GMS 9.0 Tutorial Use SEEP2D and UTEXAS to model seepage and slope stability of a earth dam Objectives Learn how to build an integrated SEEP2D/UTEXAS model in GMS. Prerequisite Tutorials None Required

More information

EECS 373 Midterm 2 Fall 2018

EECS 373 Midterm 2 Fall 2018 EECS 373 Midterm 2 Fall 2018 Name: unique name: Sign the honor code: I have neither given nor received aid on this exam nor observed anyone else doing so. Nor did I discuss this exam with anyone after

More information

LAB #1: The CSM12C32 Module and PBMCUSLK Project Board

LAB #1: The CSM12C32 Module and PBMCUSLK Project Board CS/EE 5780/6780 Handout #1 Spring 2007 Myers LAB #1: The CSM12C32 Module and PBMCUSLK Project Board Lab writeup is due to your TA at the beginning of your next scheduled lab. Don t put this off to the

More information

TLL5000 Electronic System Design Base Module

TLL5000 Electronic System Design Base Module TLL5000 Electronic System Design Base Module The Learning Labs, Inc. Copyright 2007 Manual Revision 2007.12.28 1 Copyright 2007 The Learning Labs, Inc. Copyright Notice The Learning Labs, Inc. ( TLL )

More information

ICS 61 Game Systems and Design Introduction to Scratch

ICS 61 Game Systems and Design Introduction to Scratch ICS 61, Winter, 2015 Introduction to Scratch p. 1 ICS 61 Game Systems and Design Introduction to Scratch 1. Make sure your computer has a browser open at the address http://scratch.mit.edu/projects/editor/.

More information

UNIVERSITY OF CALIFORNIA, DAVIS Department of Electrical and Computer Engineering. EEC180A DIGITAL SYSTEMS I Winter 2015

UNIVERSITY OF CALIFORNIA, DAVIS Department of Electrical and Computer Engineering. EEC180A DIGITAL SYSTEMS I Winter 2015 UNIVERSITY OF CALIFORNIA, DAVIS Department of Electrical and Computer Engineering EEC180A DIGITAL SYSTEMS I Winter 2015 LAB 1: Introduction to Quartus II Schematic Capture and ModelSim Simulation This

More information

Laboratory 10. Programming a PIC Microcontroller - Part II

Laboratory 10. Programming a PIC Microcontroller - Part II Laboratory 10 Programming a PIC Microcontroller - Part II Required Components: 1 PIC16F88 18P-DIP microcontroller 1 0.1 F capacitor 3 SPST microswitches or NO buttons 4 1k resistors 1 MAN 6910 or LTD-482EC

More information

Actel Libero TM Integrated Design Environment v2.3 Structural Schematic Flow Design Tutorial

Actel Libero TM Integrated Design Environment v2.3 Structural Schematic Flow Design Tutorial Actel Libero TM Integrated Design Environment v2.3 Structural Schematic Flow Design Tutorial 1 Table of Contents Design Flow in Libero TM IDE v2.3 Step 1 - Design Creation 3 Step 2 - Design Verification

More information

AccelDSP tutorial 2 (Matlab.m to HDL for Xilinx) Ronak Gandhi Syracuse University Fall

AccelDSP tutorial 2 (Matlab.m to HDL for Xilinx) Ronak Gandhi Syracuse University Fall AccelDSP tutorial 2 (Matlab.m to HDL for Xilinx) Ronak Gandhi Syracuse University Fall 2009-10 AccelDSP Getting Started Tutorial Introduction This tutorial exercise will guide you through the process of

More information

ME 333: Introduction to Mechatronics

ME 333: Introduction to Mechatronics ME 333: Introduction to Mechatronics Assignment 3: Investigating the PIC C32 Tool Suite Electronic submission due before 11:00 AM on Thursday February 2nd All questions asked in this problem set must be

More information

In this lecture, we will focus on two very important digital building blocks: counters which can either count events or keep time information, and

In this lecture, we will focus on two very important digital building blocks: counters which can either count events or keep time information, and In this lecture, we will focus on two very important digital building blocks: counters which can either count events or keep time information, and shift registers, which is most useful in conversion between

More information

DE2 Board & Quartus II Software

DE2 Board & Quartus II Software January 23, 2015 Contact and Office Hours Teaching Assistant (TA) Sergio Contreras Office Office Hours Email SEB 3259 Tuesday & Thursday 12:30-2:00 PM Wednesday 1:30-3:30 PM contre47@nevada.unlv.edu Syllabus

More information

HOW TO USE CODE::BLOCKS IDE FOR COMPUTER PROGRAMMING LABORATORY SESSIONS

HOW TO USE CODE::BLOCKS IDE FOR COMPUTER PROGRAMMING LABORATORY SESSIONS HOW TO USE CODE::BLOCKS IDE FOR COMPUTER PROGRAMMING LABORATORY SESSIONS INTRODUCTION A program written in a computer language, such as C/C++, is turned into executable using special translator software.

More information

ECE 353 Lab 4. MIDI Receiver in Verilog. Professor Daniel Holcomb UMass Amherst Fall 2016

ECE 353 Lab 4. MIDI Receiver in Verilog. Professor Daniel Holcomb UMass Amherst Fall 2016 ECE 353 Lab 4 MIDI Receiver in Verilog Professor Daniel Holcomb UMass Amherst Fall 2016 Timeline and Grading for Lab 4 Lectures on 11/15 and 11/17 Due on 12/12 Demos in Duda hall Schedule will be posted

More information

Typical applications where a CPLD may be the best design approach:

Typical applications where a CPLD may be the best design approach: By: Carlos Barberis, dba Bartek Technologies Description of Bartek s CPLD1 development board. For some of us CPLD s are familiar devices and for others just another acronym in the electronic device industry.

More information

TLL5000 Electronic System Design Base Module. Getting Started Guide, Ver 3.4

TLL5000 Electronic System Design Base Module. Getting Started Guide, Ver 3.4 TLL5000 Electronic System Design Base Module Getting Started Guide, Ver 3.4 COPYRIGHT NOTICE The Learning Labs, Inc. ( TLL ) All rights reserved, 2008 Reproduction in any form without permission is prohibited.

More information

Introduction to the SX Microcontroller

Introduction to the SX Microcontroller CSUS EEE174 Lab Introduction to the SX Microcontroller 599 Menlo Drive, Suite 100 Rocklin, California 95765, USA Office/Tech Support: (916) 624-8333 Fax: (916) 624-8003 Author: Andrew Lindsay / Dennis

More information

Image Processing on an FPGA for Low Cost and Low Power Applications on Autonomous Vehicles. Benjamin Huntsman

Image Processing on an FPGA for Low Cost and Low Power Applications on Autonomous Vehicles. Benjamin Huntsman Image Processing on an FPGA for Low Cost and Low Power Applications on Autonomous Vehicles By Benjamin Huntsman Contents Introduction... 4 Why System Verilog?... 4 Packages... 4 Interfaces... 4 The Architecture...

More information

Tutorial: Working with Verilog and the Xilinx FPGA in ISE 9.2i

Tutorial: Working with Verilog and the Xilinx FPGA in ISE 9.2i Tutorial: Working with Verilog and the Xilinx FPGA in ISE 9.2i This tutorial will show you how to: Use Verilog to specify a design Simulate that Verilog design Define pin constraints for the FPGA (.ucf

More information

SPRITES Moving Two At the Same Using Game State

SPRITES Moving Two At the Same Using Game State If you recall our collision detection lesson, you ll likely remember that you couldn t move both sprites at the same time unless you hit a movement key for each at exactly the same time. Why was that?

More information

Book IX. Developing Applications Rapidly

Book IX. Developing Applications Rapidly Book IX Developing Applications Rapidly Contents at a Glance Chapter 1: Building Master and Detail Pages Chapter 2: Creating Search and Results Pages Chapter 3: Building Record Insert Pages Chapter 4:

More information

ChipScope Demo Instructions

ChipScope Demo Instructions UNIVERSITY OF CALIFORNIA AT BERKELEY COLLEGE OF ENGINEERING DEPARTMENT OF ELECTRICAL ENGINEERING AND COMPUTER SCIENCE Overview ChipScope is an embedded, software based logic analyzer. By inserting an intergrated

More information

Language Translation. Compilation vs. interpretation. Compilation diagram. Step 1: compile. Step 2: run. compiler. Compiled program. program.

Language Translation. Compilation vs. interpretation. Compilation diagram. Step 1: compile. Step 2: run. compiler. Compiled program. program. Language Translation Compilation vs. interpretation Compilation diagram Step 1: compile program compiler Compiled program Step 2: run input Compiled program output Language Translation compilation is translation

More information

Basic functions of a debugger

Basic functions of a debugger UNIVERSITY OF CALIFORNIA Department of Electrical Engineering and Computer Sciences Computer Science Division CS61B Spring 1998 P. N. Hilfinger Simple Use of GDB A debugger is a program that runs other

More information