DE2 Function Library Manual

Size: px
Start display at page:

Download "DE2 Function Library Manual"

Transcription

1 ALTERA DE2 Function Library Version 1.0

2 A L T E R A D E 2 D E V E L O P M E N T B O A R D DE2 Function Library Manual Celoxica, the Celoxica logo and Handel-C are trademarks of Celoxica Limited. Altera, Quartus are trademarks and/or service marks of Altera Corp. All other products or services mentioned herein may be trademarks of their respective owners. Developed by CF Lai

3 Table of Contents Introduction...1 About This Manual...1 Using the board support library...2 Installing the Library... 2 Setting up DK... 2 Specifying header files... 3 Setting up Quartus II... 4 Compiling and Running the design... 5 Reference...6 Flash Memory Driver...7 Overview...7 Setting up the Flash Memory Driver...7 Reading from and Writing to Flash Memory...7 Reading from Flash Memory... 8 Writing to Flash Memory... 8 SRAM...9 Overview...9 Setting up the SRAM Driver...9 Reading from and Writing to SRAM...9 Reading from SRAM... 9 Writing to SRAM SDRAM...11 Overview...11 Setting up the SDRAM Driver...11 Reading from and Writing to SDRAM...11 Reading from SDRAM Writing to SDRAM PS/2 Mouse Driver...13 Overview...13 Setting up a Mouse Driver...13 VGA Display Generation...15 Overview...15 VGA Video Driver...15 Setting up the Video Driver...15 Useful Marco expressions...16

4 LCD Display Module...18 Overview...18 Writing to the LCD Module...18 Displaying Hexadecimal number...19 Useful Marco expressions...19 Switches...20 Accessing the Toggle Switches...20 Accessing the Pushbuttons Switches Segment Displays & LEDs...21 Overview...21 Using the 7-Segment Displays...21 Writing a specified bit pattern Displaying hexadecimal numbers Disabling a particular display Driving the LEDs...23 Expansion Header...24 Overview...24 Assessing the Expansion Headers...24 Index...25

5 Chapter 1 Introduction About This Manual The DE2 Function Library de2lib.zip, is a library of Handel-C macros and functions designs that enable you to produce Handel-C design on the DE2 board easily. The instructions on this manual are based on Quartus II and DK4. The DE2 Library contains the following functionality: Memory Macros to access the 8 Mbyte, 8 bit wide Flash memory. Macros to access the 512 Kbyte, 16 bit wide SRAM. Macros to access the 8 Mbyte, 16 bit wide SDRAM. PS/2 port Generic PS/2 mouse driver Video Driver for the Video DAC on the board for generating VGA display on a standard monitor. LCD Display Driver for the 16x2 LCD module for displaying ASCII characters. Switches Driver for the 18 toggle switches and the 4 pushbutton switches. 7-Segment Displays & LEDs Macros to display hexadecimal characters on the 7-Segment Displays and drive the LEDs on the board. DE2 Function Library Manual 1

6 Chapter 1: Introduction Expansion Header Driver for the two 40-pin expansion headers on the board. Further information about the DE2 board can be found in the DE2 User Manual 1. Using the board support library Installing the Library 1. Download the DE2 library de2lib.zip 2. Unzip the contents into your working directory (e.g. H:\de2project). Setting up DK 1. Start DK (Select Start>Programs>Celoxica>DK Design Suite>DK) 2. Create a new project (Select File>New) specifying the device (chip name), project name and location as shown below: 3. Include the de2lib library files (Select Tools>Options, under the Directories tab add the unzipped de2lib folder, e.g. H:\de2project\de2lib and click OK). 1 DE2 Function Library Manual 2

7 Chapter 1: Introduction 4. Add the DE2 library (Select Project>Settings, under the Linker tab add de2.hcl to the Object/library modules, path: de2lib\de2.hcl) 5. Set the file type for the Handel-C output files which will be used in Quartus II. (Select Build>Set Active Configuration, highlight EDIF and click OK) Specifying header files You need to create a new source file for your project. (Click on and select Handel-C Source File, give it a file name of your choice) You should now see the following in your File View window. Figure 1 screenshot of the object window in DK after the initial setup In the new source file (xxx.hcc) that you have just created, add the following to specify the clock rate and include the DE2 library. 1. Specify the clock rate: set clock = external "N2"; 2. Include the DE2 library: #include "DE2.hch" The DE2 provides two fixed clocks that are connected as follows: FUNCTION FPGA PIN Fixed clock 27 MHz Fixed clock 50 MHz D13 N2 Example library instantiation set clock = external "N2"; #include "DE2.hch" void main(void) //some code //use the 50 MHz clock //include the DE2 library DE2 Function Library Manual 3

8 Chapter 1: Introduction Your code does not do anything yet, but compile the project and check that it returns with no error and a folder EDIF is created under your working directory. Setting up Quartus II In the last section, you have created the EDIF file which contains the hardware descriptions of your design. This section will explain how you can synthesis this design and load it on to the DE2 board. 1. Locate the.edf file which was created by DK under the EDIF folder. (e.g. H:\de2project\EDIF\de2project.edf) 2. Start Quartus II (Select Start>Programs>Altera>Quartus II) 3. Start a new project (Select File>New Project Wizard) 4. Select your working directory, it is recommended that you choose the EDIF folder created by DK i.e. H:\de2project\EDIF, otherwise you will need to copy the.edf file to your working directory every time you make changes to your Handel-C project. 5. After you click next, select the.edf file and add that to your project. Also add the de2lib folder using the User Libraries button. 6. Specify the device: Choose Family>Cyclone II and EP2C35F672C6 and leave the other settings as default. You can find the EP2C number on the FPGA chip on the DE2 board. 7. Click Finish and you should see the following under your Project Navigator window. DE2 Function Library Manual 4

9 Chapter 1: Introduction 8. Specify options for synthesis (Select Assignments>Settings, under EDA Tool Settings click on Design Entry/Synthesis). Set the options as shown in the following screenshot. Figure 2 Setting for Design Entry/Synthesis for a Handel-C design 9. Setting unused pins to tri-stated: (Select Assignments>Device, click on the Device & Pin Options button and select the Unused Pins tab). Set the unused pins As inputs, tri-stated as shown in Figure 3 and click the OK button to confirm. Figure 3 Settings for unused pins Compiling and Running the design You only need to perform the steps mentioned above once which set up both DK and Quartus. The steps mentioned in this section are essential and need to be run every time you change your Handel-C design in DK. 1. As the Handel-C source code does not contain any function, replace the void main section of your code with the following if you want to see action on the DE2 board. DE2 Function Library Manual 5

10 Chapter 1: Introduction void main(void) DE2_SW_MASK SW; //declare variable SW as type DE2_SW_MASK do DE2SW(SW); //read input from the toggle switches DE2SetLEDRs(SW); //shows the switches input on LEDs while(1); 2. Assign pins (Select Tools>Tcl Scripts, highlight the one under Project e.g. de2project and click Run). This.tcl file stores the pin assignments of your design to the actual FPGA pins. 3. Start Compilation, this builds everything necessary for loading your design on to the DE2 board. 4. Turn on the DE2 board and make sure that the RUN/PROG switch is switched to RUN. (Please refer to the DE2 user menu for more details) 5. Program the FPGA Click on the programmer button to invoke the programmer dialogue box. Make sure it is connected and choose JTAG mode, add the.sof file and click on Program/Configure check box then click Start. 6. When the programming finishes, you can toggle the switches on the DE2 board and you should see the red LEDs are set by the switch right below it. Note If everything compiled but the board does not function as expected, it is very likely that you forgot to run the tcl script. This script must be run before compiling the project. Reference DE2 Development and Education Board User Manual Handel-C Language Reference Manual DE2 Function Library Manual 6

11 Chapter 2 Flash Memory Driver Overview The DE2 board has one 8-bit wide, 1-Mbyte Flash Memory, it is ideally for storing data after powering off. To write to the Flash memory, you must erase it first. Erasing sets all the bits to 1, this is necessary because during programming, 1 can be set to 0 but 0 cannot be set to 1. Setting up the Flash Memory Driver In order to use the Flash memory, you must first set up the driver by: 1. Initialize the Flash Memory Driver by calling the DE2FLASHDriver() macro. 2. Pass a pointer of type DE2FLASH to the macro as a parameter. Example: Setting up the Flash memory Driver set clock = external "N2"; #include "DE2.hch" void main(void) DE2_FLASH FLASH; //Create a FLASH Driver structure DE2FLASHDriver(&FLASH); //Passing a pointer - type DE2_FLASH Reading from and Writing to Flash Memory There are two macros for reading from and writing to the Flash memory. You must ensure that you do not read and write to the Flash memory at the same time. DE2 Function Library Manual 7

12 Chapter 2: Flash Memory Reading from Flash Memory macro proc DE2ReadFLASH(Address, Data, FLASH) Address Contains the address of the memory location unsigned 22 Data Value at the location specify but the address unsigned 8 FLASH Pointer for the FLASH Memory Driver DE2_FLASH Writing to Flash Memory macro proc DE2WriteFLASH(Address, Data, FLASH) Address Contains the address of the memory location unsigned 22 Data Value at the location specify but the address unsigned 8 FLASH Pointer for the FLASH Memory Driver DE2_FLASH Note It is the user responsibility to ensure that the Flash memory is not being written to and reading from at the same time. The Flash memory is 1- Mbyte in size which is enough to store a 640x bit RGB image ( byte), however it is not fast enough to be used for displaying the image in a pixel by pixel basis. DE2 Function Library Manual 8

13 Chapter 3 SRAM Overview The DE2 board has one 16-bit wide, 512-Kbyte SRAM, it is ideally for caching data for fast access. Setting up the SRAM Driver In order to use the SRAM, you must first set up the SRAM Driver by: 3. Initialize the SRAM Driver by calling the DE2SRAMDriver() macro. 4. Pass a pointer of type DE2SRAM to the macro as a parameter. Example: Setting up the SRAM Driver set clock = external "N2"; #include "DE2.hch" void main(void) DE2_SRAM SRAM; //Create a SRAM Driver structure DE2SRAMDriver(&SRAM); //Passing a pointer of type DE2_SRAM Reading from and Writing to SRAM There are in total three separate macros for reading from and writing to the SRAM. You must ensure that you use the correct one and you must not read and write to the SRAM at the same time. Reading from SRAM macro proc DE2ReadSRAM(Address, Data, SRAM) DE2 Function Library Manual 9

14 Chapter 3: SRAM Address Contains the address of the RAM location unsigned 18 Data Value at the location specify but the address unsigned 16 SRAM Pointer for the SRAM Driver DE2_SRAM Writing to SRAM There are two types of macros for writing to the SRAM, the first type writes Data to all 16-bit of the SRAM: macro proc DE2ReadSRAM(Address, Data, SRAM) With the second type macro, individual bytes of the SRAM can be written indicated by the type DE2_SRAM_MASK. macro proc DE2ReadMaskSRAM(Address, Data, Mask, SRAM) Address Contains the address of the RAM location unsigned 18 Data Value at the location specify but the address unsigned 16 Mask 2-bit mask indicating which bytes should be updated DE2_SRAM_MASK SRAM Pointer for the SRAM Driver DE2_SRAM Note It is the user responsibility to ensure that the SRAM is not being written to and reading from at the same time. The SRAM is 512-Kbyte in size which is enough to store an 800x600 8-bit grayscale image (480-Kbyte) for display, consider using the SDRAM for displaying a color image. DE2 Function Library Manual 10

15 Chapter 4 SDRAM Overview The DE2 board has one 16-bit wide, 8-Mbyte SDRAM, which can be used for frame buffer. The SDRAM is clocked at 100 MHz and this library support using the SDRAM as a SRAM. Setting up the SDRAM Driver In order to use the SDRAM, you must first set up the driver by: 5. Initialize the Flash Memory Driver by calling the DE2SDRAMDriver() macro. 6. Pass a pointer of type DE2SDRAM to the macro as a parameter. Example: Setting up the SDRAM Driver set clock = external "N2"; #include "DE2.hch" void main(void) DE2_SDRAM SDRAM; //Create a SDRAM Driver structure DE2SDRAMDriver(&SDRAM); //Passing a pointer of type DE2_SRAM Reading from and Writing to SDRAM There are two macros for reading from and writing to the SDRAM. You must ensure that you do not read and write to the SDRAM at the same time. DE2 Function Library Manual 11

16 Chapter 4: SDRAM Reading from SDRAM macro proc DE2ReadSDRAM(Address, Data, SDRAM) Address Contains the address of the memory location unsigned 22 Data Value at the location specify but the address unsigned 16 SDRAM Pointer for the SDRAM Driver DE2_SDRAM Writing to SDRAM macro proc DE2WriteSDRAM(Address, Data, SDRAM) Address Contains the address of the memory location unsigned 22 Data Value at the location specify but the address unsigned 16 SDRAM Pointer for the SDRAM Driver DE2_SDRAM Note It is the user responsibility to ensure that the SDRAM is not being written to and reading from at the same time. DE2 Function Library Manual 12

17 Chapter 5 PS/2 Mouse Driver Overview The DE2 library contains driver for PS/2 compatible mouse which can be connected to the PS/2 port on the board. A Genius NetScroll + mouse (a three button mouse) was used to test the driver. The driver does not support the scrolling wheel on mouse device with wheels. Setting up a Mouse Driver To set up a mouse driver, you need to: 1. Install the mouse driver by calling the macro procedure DE2MouseDriver(). 2. Pass a pointer of type DE2_PS2_MOUSE to the macro as a parameter. The type DE2_PS2_MOUSE has the following structure: typedef struct signal unsigned 10 PointerX; signal unsigned 10 PointerY; signal unsigned 1 LeftButton; signal unsigned 1 MiddleButton; signal unsigned 1 RightButton; signal unsigned 10 MaxX; signal unsigned 10 MaxY; DE2_PS2_MOUSE; PARAMETERS DESCRIPTION PointerX PointerY Current X coordinates of the mouse pointer Current X coordinates of the mouse pointer DE2 Function Library Manual 13

18 Chapter 5: PS/2 Mouse Driver LeftButton MiddleButton RightButton MaxX MaxY State of the left button on the mouse (1 = pressed, 0 = released) State of the middle button on the mouse (1 = pressed, 0 = released) State of the right button on the mouse (1 = pressed, 0 = released) Maximum value of the mouse pointer on the screen in the X-direction Maximum value of the mouse pointer on the screen in the Y-direction The default position of the mouse pointer (PointerX,PointerY) are being set to the middle of the screen on the default resolution 800 x 600 pixels. And the MaxX and MaxY are by default set to 799 and 599 respectively. Example Displaying a mouse pointer set clock = external "N2"; #include "DE2.hch" macro proc Pointer(VideoPtr, MousePtr) //find the code in the file called pointer.hcc 2, this //code uses the mouse button to switch between two backgrounds void main(void) DE2_PS2_MOUSE Mouse; DE2_VGA_DRIVER Video; par DE2PS2MouseDriver(&Mouse); DE2VideoDriver800x600(&Video); Pointer(&Video,&Mouse); 2 File pointer.hcc is located under the folder sample code within the de2lib folder DE2 Function Library Manual 14

19 Chapter 6 VGA Display Generation Overview The DE2 board can generate a VGA display on LCD / CRT monitor, the DE2 library uses the 30-bit color video DAC to generate the required signals. The DE2 library contains: DE2VideoDriver800x600, a video driver macro Macro expressions to provide information of the display VGA Video Driver The DE2VideoDriver800x600 macro generates all the signals required for a monitor using the VGA 800x600 video standard, including the horizontal and vertical sync signals. The driver output the current x and y coordinates of the scan on the screen and you must assign the desire RGB (30bits) value on a pixel by pixel basis. The screen scan from the top left pixel, starting from (0,0) and finishes at (799,599) for the visible region. The invisible part of the scan is called the blanking region, you can find out if you are in the visible region by check the parameter Visible. The pixel clock for this driver runs at 50MHz yielding 800 horizontal pixels and 600 vertical pixels. Therefore your design must be run at 50MHz or faster for the RGB value to be loaded correctly. Setting up the Video Driver Steps for setting up the video driver: Call DE2VideoDriver800x600 macro procedure to install the video driver. DE2 Function Library Manual 15

20 Chapter 6: VGA Display Generation Pass a pointer of type DE2_VGA_DRIVER to macro as a parameter. The type DE2_VGA_DRIVER has the following structure: typedef struct signal unsigned 30 Output; signal unsigned 10 ScanX; signal unsigned 10 ScanY; signal unsigned 1 Visible; DE2_VGA_DRIVER; PARAMETERS DESCRIPTION Output ScanX ScanY Visible screensaver The 30 bits RGB signals to be displayed. Current horizontal pixel being display. Current vertical pixel being display. Stating whether the current scans coordinate is visible. Indicate whether the screensaver is on or off. (1 for on, 0 for off) Useful Marco expressions There are three macro expressions that provide information of the display that comes with the DE2 library including: DE2VisibleCols number of visible columns. DE2VisibleLines number of visible lines. Example Installing the Video Driver set clock = external "N2"; #include "DE2.hch" //use the 50 MHz clock //include the DE2 library macro proc ColourScreen(VideoPtr) unsigned 10 temp; macro expr sx = VideoPtr->ScanX; macro expr sy = VideoPtr->ScanY; do DE2 Function Library Manual 16

21 Chapter 6: VGA Display Generation if (VideoPtr->Visible!= 0) VideoPtr->Output = temp; else delay; while(1); void main(void) DE2_VGA_DRIVER Video; par DE2VideoDriver800x600(&Video); ColourScreen(&Video); This sample code (colourscreen.hcc) generate a 800x600 VGA display with colour channel Red and Green set to Current X and Y resulting in a colour change from the left of the screen to the right of the screen. DE2 Function Library Manual 17

22 Chapter 7 LCD Display Module Overview The DE2 board has a 2 x 16 digits LCD Module which can be used to display text. The DE2 library contains macro that allows you to: Write ASCII characters to the LCD Module. Function to convert hexadecimal number into ASCII. Macro expressions for common characters, e.g. A-Z. Writing to the LCD Module You can write to the 7-segment display using the macro procedure: DE2LCDDriver(line) line Line of characters in ASCII DE2_LCD_LINE Please refer a ASCII table for the ASCII code for characters, the characters which are supported `abcdefghijklmnopqrstuvwxyz ~ Please note that you do not need to find the code for characters A-Z, a-z and space as the library contains macro expressions for these characters. DE2 Function Library Manual 18

23 Chapter 7: LCD Display Module Displaying Hexadecimal number The DE2 library contains a macro expr for converting Hex number into ASCII: macro expr hex2ascii(hex) hex A hexadecimal for converting into ASCII. unsigned 4 This function returns the ASCII code for the hexadecimal number that is inputted. Useful Marco expressions The DE2 library contains a few macro expressions that are useful for displaying text on the LCD module, these include: Characters A Z and a z sp for Space blank_line for displaying a blank screen on the LCD module Example displaying a line of text on the LCD module set clock = external "N2"; #include "DE2.hch" //use the 50 MHz clock //include the DE2 library void main(void) DE2_LCD_LINE line; line = blank_line<-152; DE2LCDDriver(line); This sample code will display 1 Hello world on the screen. DE2 Function Library Manual 19

24 Chapter 8 Switches Accessing the Toggle Switches You can obtain inputs from the 18 toggle switches with the macro procedure: DE2SW(mask) mask Each bit corresponds to each toggle switches. unsigned 18 For example, if only SW0 is set to low (closest to the edge of the board), variable SW will return the following bit pattern: when you call DE2SW(SW). Accessing the Pushbuttons Switches There are 4 pushbuttons switches on the DE2 board marked as KEY0 to KEY3. Each switch provides a high logic level 1 when it is not pressed, and provides a low logic level 0 when depressed. You can get the status of these pushbuttons switches with macro procedure: DE2Key(mask) mask Each bit corresponds to each pushbutton switches. unsigned 4 For example, if only KEY3 is pressed, variable KEY will return the bit pattern 0111 when DE2Key(mask) is being called. DE2 Function Library Manual 20

25 Chapter 9 7-Segment Displays & LEDs Overview The DE2 board has eight 7-segment displays, eighteen red LEDs and nine green LEDs. The DE2 library contains macros that allow you to: Write to the 7-segment displays. Display hexadecimal numbers on the 7-segment displays. Access eighteen red LEDs and nine green LEDs on the board. Using the 7-Segment Displays To use a 7-segment display, you can use macros to: Write a specified bit pattern to it. Write hexadecimal digits to it. Writing a specified bit pattern You can write to the 7-segment display using the macro procedure: DE2Set7Seg(SegN, Pattern) SegN The display number (integer 0-8). unsigned 3 Pattern The pattern to be displayed on the display. unsigned 7 For the map of the bits pattern, please refer to Figure 4: DE2 Function Library Manual 21

26 Chapter 9: 7-Segment Displays & LEDs Figure 4 position and index map of the 7-segment displays The library also include a pre-define type DE2_7SEG for the pattern of the displays which is useful if you are writing a pattern to the displays. Displaying hexadecimal numbers The library also supports display of hexadecimal numbers, you can use the following macro procedure to display a hexadecimal number on the displays. DE2Set7SegDigit(SegN, hexdigit) SegN The display number (integer 0-8). unsigned 3 hexdigit The hexadecimal number that you want to display. unsigned 4 Disabling a particular display It is likely that you do not need to use all display and would like disable some of them, you may do this by calling the following macro procedure: DE2Disable7Seg(SegN) SegN The display number (integer 0-8). unsigned 3 Note The display numbers are marked on the board from HEX0 to HEX7. You must not write and display a hex number on the same display at the same time. DE2 Function Library Manual 22

27 Chapter 9: 7-Segment Displays & LEDs Example displaying numbers on the 7-Segment displays 3 set clock = external "N2"; #include "DE2.hch" //use the 50 MHz clock //include the DE2 library void main(void) do par DE2Set7SegDigit(0,0x1); DE2Set7SegDigit(1,0x2); DE2Set7SegDigit(2,0x3); DE2Disable7Seg(3); while(1); //run in parallel //display digit 1 on HEX0 //display digit 2 on HEX1 //display digit 3 on HEX2 //disable display HEX3 Driving the LEDs The green and red LEDs on the DE2 board can be driven using different macro procedures described below: macro proc DE2SetLEDRs(mask) mask Each bit corresponds to each red LEDs. unsigned 18 macro proc DE2SetLEDGs(mask) mask Each bit corresponds to each green LEDs. unsigned 9 The bits of the mask corresponds directly to the LEDs, e.g. to turning on only LEDG6, call DE2SetLEDGs( ). 3 Source code 7seg.hcc is located at the sample code folder within the de2lib directory DE2 Function Library Manual 23

28 Chapter 10 Expansion Header Overview The DE2 board has two 40-pin expansion headers / GPIO (General Purpose I/O). The DE2 Library includes macros that allow you to Write to or read from the expansion headers Assessing the Expansion Headers You can access the expansion headers using the macro procedure: DE2GPIO_0(PinN,IO,Data) DE2GPIO_1(PinN,IO,Data) PinN Pin number of the expansion header (0-40) unsigned 6 IO Set the particular pin to input or output taking value 1 or 0. 1 for input and 0 for output. unsigned 1 Data Data to be written to or read from the particular pin unsigned 1 For example, to read a value from pin 0 on the expansion header GPIO_0 (JP1), you would call DE2GPIO_0(0,1,data). DE2 Function Library Manual 24

29 Index 7-Segment Displays, 1, 21 Expansion Header, 25 Flash Memory, 7 LCD, 1, 17 LEDs, 1, 2, 21, 24 Memory, 1 PS/2 port, 1 SDRAM, 11 SRAM, 7, 9 Switches, 1, 19 Pushbuttons Switches, 19 Toggle Switches, 19 VGA, 14 Video, 1 DE2 Function Library Manual 25

PRELAB! Read the entire lab, and complete the prelab questions (Q1- Q3) on the answer sheet before coming to the laboratory.

PRELAB! Read the entire lab, and complete the prelab questions (Q1- Q3) on the answer sheet before coming to the laboratory. PRELAB! Read the entire lab, and complete the prelab questions (Q1- Q3) on the answer sheet before coming to the laboratory. 1.0 Objectives In this lab you will get familiar with the concept of using the

More information

CPE 200L LABORATORY 4: INTRODUCTION TO DE2 BOARD UNIVERSITY OF NEVADA, LAS VEGAS GOALS: BACKGROUND:

CPE 200L LABORATORY 4: INTRODUCTION TO DE2 BOARD UNIVERSITY OF NEVADA, LAS VEGAS GOALS: BACKGROUND: CPE 200L LABORATORY 4: INTRODUCTION TO DE2 BOARD DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING UNIVERSITY OF NEVADA, LAS VEGAS GOALS: Getting familiar with DE2 board installation, properties, usage.

More information

Lab 2 EECE473 Computer Organization & Architecture University of Maine

Lab 2 EECE473 Computer Organization & Architecture University of Maine Lab 2: Verilog Programming Instructor: Yifeng Zhu 50 Points Objectives: 1. Quatus II Programming assignment: PIN assignments, LEDs, switches; 2. Download and test the design on Altera DE2 board 3. Create

More information

Introduction to the Altera SOPC Builder Using Verilog Design

Introduction to the Altera SOPC Builder Using Verilog Design Introduction to the Altera SOPC Builder Using Verilog Design This tutorial presents an introduction to Altera s SOPC Builder software, which is used to implement a system that uses the Nios II processor

More information

Introduction to the Altera SOPC Builder Using Verilog Designs. 1 Introduction

Introduction to the Altera SOPC Builder Using Verilog Designs. 1 Introduction Introduction to the Altera SOPC Builder Using Verilog Designs 1 Introduction This tutorial presents an introduction to Altera s SOPC Builder software, which is used to implement a system that uses the

More information

NIOS CPU Based Embedded Computer System on Programmable Chip

NIOS CPU Based Embedded Computer System on Programmable Chip 1 Objectives NIOS CPU Based Embedded Computer System on Programmable Chip EE8205: Embedded Computer Systems This lab has been constructed to introduce the development of dedicated embedded system based

More information

Introduction to VHDL Design on Quartus II and DE2 Board

Introduction to VHDL Design on Quartus II and DE2 Board ECP3116 Digital Computer Design Lab Experiment Duration: 3 hours Introduction to VHDL Design on Quartus II and DE2 Board Objective To learn how to create projects using Quartus II, design circuits and

More information

EMT1250 LABORATORY EXPERIMENT. EXPERIMENT # 7: VHDL and DE2 Board. Name: Date:

EMT1250 LABORATORY EXPERIMENT. EXPERIMENT # 7: VHDL and DE2 Board. Name: Date: EXPERIMENT # 7: VHDL and DE2 Board Name: Date: Equipment/Parts Needed: Quartus II R Web Edition V9.1 SP2 software by Altera Corporation USB drive to save your files Objective: Learn how to create and modify

More information

Altera DE1 Board DE1. Development and Education Board. User Manual. Copyright 2006 Altera Corporation

Altera DE1 Board DE1. Development and Education Board. User Manual. Copyright 2006 Altera Corporation Altera DE1 Board DE1 Development and Education Board User Manual Version 1.1 Copyright 2006 Altera Corporation Chapter 2 Altera DE1 Board This chapter presents the features and design characteristics of

More information

DKAN0011A Setting Up a Nios II System with SDRAM on the DE2

DKAN0011A Setting Up a Nios II System with SDRAM on the DE2 DKAN0011A Setting Up a Nios II System with SDRAM on the DE2 04 November 2009 Introduction This tutorial details how to set up and instantiate a Nios II system on Terasic Technologies, Inc. s DE2 Altera

More information

CSEE W4840 Embedded System Design Lab 1

CSEE W4840 Embedded System Design Lab 1 CSEE W4840 Embedded System Design Lab 1 Stephen A. Edwards Due January 31, 2008 Abstract Learn to use the Altera Quartus development envrionment and the DE2 boards by implementing a small hardware design

More information

NIOS CPU Based Embedded Computer System on Programmable Chip

NIOS CPU Based Embedded Computer System on Programmable Chip NIOS CPU Based Embedded Computer System on Programmable Chip EE8205: Embedded Computer Systems NIOS-II SoPC: PART-II 1 Introduction This lab has been constructed to introduce the development of dedicated

More information

Tutorial for Altera DE1 and Quartus II

Tutorial for Altera DE1 and Quartus II Tutorial for Altera DE1 and Quartus II Qin-Zhong Ye December, 2013 This tutorial teaches you the basic steps to use Quartus II version 13.0 to program Altera s FPGA, Cyclone II EP2C20 on the Development

More information

Figure 2.1 The Altera UP 3 board.

Figure 2.1 The Altera UP 3 board. Figure 2.1 The Altera UP 3 board. USB Port PS-2 Port USB PHY Chip Heat Sink Parallel Port B B VGA Port I2C PROM Chip... JP19 Headers for I2C Bus Signals J3 Mounting Hole Santa Cruz Expansion Long Connector

More information

FPGA RGB Matrix. Created by lady ada. Last updated on :15:42 PM UTC

FPGA RGB Matrix. Created by lady ada. Last updated on :15:42 PM UTC FPGA RGB Matrix Created by lady ada Last updated on 2017-12-27 09:15:42 PM UTC Guide Contents Guide Contents Overview Controlling the Adafruit 32x16 RGB LED Matrix with a DE0-Nano FPGA Board Prerequisites

More information

Quartus II Introduction Using Schematic Design

Quartus II Introduction Using Schematic Design Quartus II Introduction Using Schematic Design This tutorial presents an introduction to the Quartus R II CAD system. It gives a general overview of a typical CAD flow for designing circuits that are implemented

More information

Laboratory IV LCD Framebuffer

Laboratory IV LCD Framebuffer Introduction Laboratory IV In this laboratory you will explore different ways of creating video images. There are four projects. In the first one you will create an image on the fly using PAL macros to

More information

FPGA Development Board Hardware and I/O Features

FPGA Development Board Hardware and I/O Features CHAPTER 2 FPGA Development Board Hardware and I/O Features Photo: The Altera DE1 board contains a Cyclone II FPGA, external SRAM, SDRAM & Flash memory, and a wide assortment of I/O devices and connectors.

More information

Laboratory Exercise 8

Laboratory Exercise 8 Laboratory Exercise 8 Memory Blocks In computer systems it is necessary to provide a substantial amount of memory. If a system is implemented using FPGA technology it is possible to provide some amount

More information

CHAPTER 1 Introduction of the tnano Board CHAPTER 2 tnano Board Architecture CHAPTER 3 Using the tnano Board... 8

CHAPTER 1 Introduction of the tnano Board CHAPTER 2 tnano Board Architecture CHAPTER 3 Using the tnano Board... 8 CONTENTS CHAPTER 1 Introduction of the tnano Board... 2 1.1 Features...2 1.2 About the KIT...4 1.3 Getting Help...4 CHAPTER 2 tnano Board Architecture... 5 2.1 Layout and Components...5 2.2 Block Diagram

More information

CSEE W4840 Embedded System Design Lab 1

CSEE W4840 Embedded System Design Lab 1 CSEE W4840 Embedded System Design Lab 1 Stephen A. Edwards Due February 2, 2009 Abstract Learn to use the Altera Quartus development envrionment and the DE2 boards by implementing a small hardware design

More information

Quartus II Introduction Using Verilog Design

Quartus II Introduction Using Verilog Design Quartus II Introduction Using Verilog Design This tutorial presents an introduction to the Quartus R II CAD system. It gives a general overview of a typical CAD flow for designing circuits that are implemented

More information

NIOS CPU Based Embedded Computer System on Programmable Chip

NIOS CPU Based Embedded Computer System on Programmable Chip NIOS CPU Based Embedded Computer System on Programmable Chip 1 Lab Objectives EE8205: Embedded Computer Systems NIOS-II SoPC: PART-I This lab has been constructed to introduce the development of dedicated

More information

Terasic DE0 Field Programmable Gate Array (FPGA) Development Board

Terasic DE0 Field Programmable Gate Array (FPGA) Development Board Lecture FPGA-01 DE0 FPGA Development Board and Quartus II 9.1 FPGA Design Software Terasic DE0 Field Programmable Gate Array (FPGA) Development Board 1 May 16, 2013 3 Layout and Components of DE0 May 16,

More information

CSEE W4840 Embedded System Design Lab 1

CSEE W4840 Embedded System Design Lab 1 CSEE W4840 Embedded System Design Lab 1 Stephen A. Edwards Due February 3, 2011 Abstract Learn to use the Altera Quartus development envrionment and the DE2 boards by implementing a small hardware design

More information

Laboratory 4 Design a Muti-bit Counter

Laboratory 4 Design a Muti-bit Counter Laboratory 4 Design a Muti-bit Counter Background A. Approach I: Design 3-bit counter with and clear T-type flip-flop is shown in Figure 1. A T flip-flop is obtained from a JK flip-flop by tying the J

More information

4. SOPC Builder Components

4. SOPC Builder Components 4. SOPC Builder Components VGA Core for Altera DE2/DE1 Boards QII544-6.. Introduction 1 Core Overview This chapter describes in detail what an SOPC Builder component is. SOPC Builder components are individual

More information

Laboratory Exercise 7

Laboratory Exercise 7 Laboratory Exercise 7 Finite State Machines This is an exercise in using finite state machines. Part I We wish to implement a finite state machine (FSM) that recognizes two specific sequences of applied

More information

Tutorial on Quartus II Introduction Using Verilog Code

Tutorial on Quartus II Introduction Using Verilog Code Tutorial on Quartus II Introduction Using Verilog Code (Version 15) 1 Introduction This tutorial presents an introduction to the Quartus II CAD system. It gives a general overview of a typical CAD flow

More information

Laboratory 4 Design a Muti-bit Counter and Programming a FPGA

Laboratory 4 Design a Muti-bit Counter and Programming a FPGA Laboratory 4 Design a Muti-bit Counter and Programming a FPGA For your report: The problem written in English The flowchart or function table to solve the problem if it is necessary The design entry included

More information

Tutorial on Quartus II Introduction Using Schematic Designs

Tutorial on Quartus II Introduction Using Schematic Designs Tutorial on Quartus II Introduction Using Schematic Designs (Version 15) 1 Introduction This tutorial presents an introduction to the Quartus II CAD system. It gives a general overview of a typical CAD

More information

Quartus II Introduction Using Verilog Designs. 1 Introduction. For Quartus II 12.0

Quartus II Introduction Using Verilog Designs. 1 Introduction. For Quartus II 12.0 Quartus II Introduction Using Verilog Designs For Quartus II 12.0 1 Introduction This tutorial presents an introduction to the Quartus II CAD system. It gives a general overview of a typical CAD flow for

More information

The development board used in this class is ALTERA s DE The board provides the following hardware:

The development board used in this class is ALTERA s DE The board provides the following hardware: Lab 1 The goal of this lab is to get familiar with the mechanics of designing digital systems using VHDL and ALTERA s FPGAs. The development board used in this class is ALTERA s DE2-115. The board provides

More information

9. Building Memory Subsystems Using SOPC Builder

9. Building Memory Subsystems Using SOPC Builder 9. Building Memory Subsystems Using SOPC Builder QII54006-6.0.0 Introduction Most systems generated with SOPC Builder require memory. For example, embedded processor systems require memory for software

More information

Lab 6: Integrated the Decoder with Muti-bit Counter and Programming a FPGA

Lab 6: Integrated the Decoder with Muti-bit Counter and Programming a FPGA Lab 6: Integrated the Decoder with Muti-bit Counter and Programming a FPGA For your report: The problem written in English The flowchart or function table to solve the problem if it is necessary The design

More information

Quick Tutorial for Quartus II & ModelSim Altera

Quick Tutorial for Quartus II & ModelSim Altera Quick Tutorial for Quartus II & ModelSim Altera By Ziqiang Patrick Huang Hudson 213c Ziqiang.huang@duke.edu Download & Installation For Windows or Linux users : Download Quartus II Web Edition v13.0 (ModelSim

More information

Laboratory Exercise 5

Laboratory Exercise 5 Laboratory Exercise 5 Bus Communication The purpose of this exercise is to learn how to communicate using a bus. In the designs generated by using Altera s SOPC Builder, the Nios II processor connects

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

System-on-a-Programmable-Chip (SOPC) Development Board

System-on-a-Programmable-Chip (SOPC) Development Board System-on-a-Programmable-Chip (SOPC) Development Board Solution Brief 47 March 2000, ver. 1 Target Applications: Embedded microprocessor-based solutions Family: APEX TM 20K Ordering Code: SOPC-BOARD/A4E

More information

Lancelot. VGA video controller for the Altera Excalibur processors. v2.1. Marco Groeneveld May 1 st,

Lancelot. VGA video controller for the Altera Excalibur processors. v2.1. Marco Groeneveld May 1 st, Lancelot VGA video controller for the Altera Excalibur processors. v2.1 Marco Groeneveld May 1 st, 2003 http://www.fpga.nl 1. Description Lancelot is a VGA video controller for the Altera Nios and Excalibur

More information

Excalibur Solutions DPRAM Reference Design

Excalibur Solutions DPRAM Reference Design Excalibur Solutions DPRAM Reference Design August 22, ver. 2.3 Application Note 173 Introduction The Excalibur devices are excellent system development platforms, offering flexibility, performance, and

More information

LHCb TELL1 VHDL firmware development guide

LHCb TELL1 VHDL firmware development guide LHCb 2004-xxx LPHE 2004-xxx January 18, 2005 LHCb TELL1 VHDL firmware development guide Version 2.4 Guido Haefeli 1 Abstract This document is a guide to the TELL1 VHDL framework installation. 1 E-mail:

More information

DK2. Handel-C code optimization

DK2. Handel-C code optimization DK2 Handel-C code optimization Celoxica, the Celoxica logo and Handel-C are trademarks of Celoxica Limited. All other products or services mentioned herein may be trademarks of their respective owners.

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

ECE 437 Computer Architecture and Organization Lab 6: Programming RAM and ROM Due: Thursday, November 3

ECE 437 Computer Architecture and Organization Lab 6: Programming RAM and ROM Due: Thursday, November 3 Objectives: ECE 437 Computer Architecture and Organization Lab 6: Programming RAM and ROM Due: Thursday, November 3 Build Instruction Memory and Data Memory What to hand in: Your implementation source

More information

University of Massachusetts Amherst Computer Systems Lab 1 (ECE 354) LAB 1 Reference Manual

University of Massachusetts Amherst Computer Systems Lab 1 (ECE 354) LAB 1 Reference Manual University of Massachusetts Amherst Computer Systems Lab 1 (ECE 354) LAB 1 Reference Manual Lab 1: Using NIOS II processor for code execution on FPGA Objectives: 1. Understand the typical design flow in

More information

ECE 3610 Microprocessing Systems Lab #1 Verilog Design of the TOC Using Quartus II

ECE 3610 Microprocessing Systems Lab #1 Verilog Design of the TOC Using Quartus II ECE 3610 Microprocessing Systems Lab #1 Verilog Design of the TOC Using Quartus II This lab manual presents an introduction to the Quartus II Computer Aided Design (CAD) system. This manual gives step-by-step

More information

NIOS Character. Last updated 7/16/18

NIOS Character. Last updated 7/16/18 NIOS Character Last updated 7/16/18 Character Buffer Block Diagram CLK RST Clock Reset_bar CLK RST PLL 25MHz* CPU Onchip Memory JTAG UART Timer System ID S M S S S S S M S Character Buffer DMA Dual Port

More information

DOWNLOADING DESIGNS TO THE ALTERA DE10-LITE FPGA

DOWNLOADING DESIGNS TO THE ALTERA DE10-LITE FPGA DOWNLOADING DESIGNS TO THE ALTERA DE10-LITE FPGA Consider the design of a three-bit prime number detector completed in the MSOE schematic entry tutorial. Figure 1 shows the block diagram and truth table.

More information

AN 825: Partially Reconfiguring a Design on Intel Stratix 10 GX FPGA Development Board

AN 825: Partially Reconfiguring a Design on Intel Stratix 10 GX FPGA Development Board AN 825: Partially Reconfiguring a Design on Intel Stratix 10 GX FPGA Development Board Updated for Intel Quartus Prime Design Suite: 17.1 Subscribe Send Feedback Latest document on the web: PDF HTML Contents

More information

Section II. Software Settings

Section II. Software Settings Section II. Software Settings Configuration options can be set in the Quartus II and MAX+PLUS II development software. You can also specify which configuration file formats Quartus II or MAX+PLUS II generates.

More information

Chip Design with FPGA Design Tools

Chip Design with FPGA Design Tools Chip Design with FPGA Design Tools Intern: Supervisor: Antoine Vazquez Janusz Zalewski Florida Gulf Coast University Fort Myers, FL 33928 V1.9, August 28 th. Page 1 1. Introduction FPGA is abbreviation

More information

Using the SDRAM on Altera s DE1 Board with Verilog Designs. 1 Introduction. For Quartus II 13.0

Using the SDRAM on Altera s DE1 Board with Verilog Designs. 1 Introduction. For Quartus II 13.0 Using the SDRAM on Altera s DE1 Board with Verilog Designs For Quartus II 13.0 1 Introduction This tutorial explains how the SDRAM chip on Altera s DE1 Development and Education board can be used with

More information

Nios Embedded Processor Development Board

Nios Embedded Processor Development Board Nios Embedded Processor Development Board July 2003, ver. 2.2 Data Sheet Introduction Development Board Features Functional Overview This data sheet describes the features and functionality of the Nios

More information

The Altera UP 3 Board

The Altera UP 3 Board The Altera UP 3 Board Photo: The Altera UP 3 board contains a Cyclone FPGA, external SRAM, SDRAM & Flash memory, and a wide assortment of 110 devices and connectors. 36 Rapid Prototyping of Digital Systems

More information

Chapter 2: Hardware Design Flow Using Verilog in Quartus II

Chapter 2: Hardware Design Flow Using Verilog in Quartus II Chapter 2: Hardware Design Flow Using Verilog in Quartus II 2.1 Introduction to Quartus II System Development Software This chapter is an introduction to the Quartus II software that will be used for analysis

More information

EN2911X: Reconfigurable Computing Lecture 01: Introduction

EN2911X: Reconfigurable Computing Lecture 01: Introduction EN2911X: Reconfigurable Computing Lecture 01: Introduction Prof. Sherief Reda Division of Engineering, Brown University Fall 2009 Methods for executing computations Hardware (Application Specific Integrated

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

ISE Simulator (ISim) In-Depth Tutorial. UG682 (v 13.1) March 1, 2011

ISE Simulator (ISim) In-Depth Tutorial. UG682 (v 13.1) March 1, 2011 ISE Simulator (ISim) In-Depth Tutorial Xilinx is disclosing this user guide, manual, release note, and/or specification (the "Documentation") to you solely for use in the development of designs to operate

More information

University Program 3 Kit

University Program 3 Kit University Program 3 Kit VLSI Tutorial : LEDs & Push Buttons Version 02.00 System Level Solutions Inc. (USA) 14702 White Cloud Ct. Morgan Hill, CA 95037 2 System Level Solutions Copyright 2003-2005 System

More information

IMPLEMENTING COUNTERS

IMPLEMENTING COUNTERS EECS:6660:0xxField Programmable Gate Arrays s11l1_fpga.fm - 1 Lab Assignment #1 Due Thursday, March 31 2011 IMPLEMENTING COUNTERS 1. OBJECTIVES - learning the VHDL implementation process using Language

More information

University of Massachusetts Amherst Computer Systems Lab 2 (ECE 354) Spring Lab 1: Using Nios 2 processor for code execution on FPGA

University of Massachusetts Amherst Computer Systems Lab 2 (ECE 354) Spring Lab 1: Using Nios 2 processor for code execution on FPGA University of Massachusetts Amherst Computer Systems Lab 2 (ECE 354) Spring 2007 Lab 1: Using Nios 2 processor for code execution on FPGA Objectives: After the completion of this lab: 1. You will understand

More information

Designing Your Own Soft Modules

Designing Your Own Soft Modules 4 Objectives Learn how to create circuit schematics with OrCAD Learn how to export a circuit from OrCAD as an EDIF netlist. Learn how to import an EDIF netlist into the FastChip library as a new soft module.

More information

Using XILINX WebPACK Software to Create CPLD Designs

Using XILINX WebPACK Software to Create CPLD Designs Introduction to WebPACK Using XILINX WebPACK Software to Create CPLD Designs RELEASE DATE: 10/24/1999 All XS-prefix product designations are trademarks of XESS Corp. All XC-prefix product designations

More information

NOTE: This tutorial contains many large illustrations. Page breaks have been added to keep images on the same page as the step that they represent.

NOTE: This tutorial contains many large illustrations. Page breaks have been added to keep images on the same page as the step that they represent. CSE 352 Tutorial # 4 Synthesizing onto an FPGA Objectives This tutorial will walk you through the steps of implementing a design made in Active-HDL onto the Altera Cyclone II FPGA NOTE: This tutorial contains

More information

Embedded System Design

Embedded System Design csee 4840 Embedded System Design Lab 1: Using the fpga Stephen A. Edwards Columbia University 2015 This shows how to compile and download an fpga-only project to the SoCKit board. Your assignment is to

More information

QUARTUS II Altera Corporation

QUARTUS II Altera Corporation QUARTUS II Quartus II Design Flow Design Entry Timing Constraints Synthesis Placement and Routing Timing, Area, Power Optimization Timing and Power Analyzer Optimized Design 2 Can I still use a Processor?

More information

Name EGR 2131 Lab #6 Number Representation and Arithmetic Circuits

Name EGR 2131 Lab #6 Number Representation and Arithmetic Circuits Name EGR 2131 Lab #6 Number Representation and Arithmetic Circuits Equipment and Components Quartus software and Altera DE2-115 board PART 1: Number Representation in Microsoft Calculator. First, let s

More information

NIOS II Pixel Display

NIOS II Pixel Display NIOS Pixel Display SDRAM 512Mb Clock Reset_bar CPU Onchip Memory External Memory Controller JTAG UART Pixel DMA Resampler Scaler Dual Port FIFO VGA Controller Timer System ID VGA Connector PLL 2 tj SDRAM

More information

SignalTap II with Verilog Designs. 1 Introduction. For Quartus II 13.1

SignalTap II with Verilog Designs. 1 Introduction. For Quartus II 13.1 SignalTap II with Verilog Designs For Quartus II 13.1 1 Introduction This tutorial explains how to use the SignalTap II feature within Altera s Quartus II software. The SignalTap II Embedded Logic Analyzer

More information

Cyclone III FPGA Starter Kit User Guide

Cyclone III FPGA Starter Kit User Guide Cyclone III FPGA Starter Kit User Guide 101 Innovation Drive San Jose, CA 95134 www.altera.com Document Date: April 2007 Copyright 2007 Altera Corporation. All rights reserved. Altera, The Programmable

More information

SOPC LAB1. I. Introduction. II. Lab contents. 4-bit count up counter. Advanced VLSI Due Wednesday, 01/08/2003

SOPC LAB1. I. Introduction. II. Lab contents. 4-bit count up counter. Advanced VLSI Due Wednesday, 01/08/2003 SOPC LAB1 I. Introduction The purpose of this lab is to familiarize you with all the items in the kit. This tutorial tells you how to develop FPGA system in Quartus II. You are ready to begin using the

More information

Making Qsys Components. 1 Introduction. For Quartus II 13.0

Making Qsys Components. 1 Introduction. For Quartus II 13.0 Making Qsys Components For Quartus II 13.0 1 Introduction The Altera Qsys tool allows a digital system to be designed by interconnecting selected Qsys components, such as processors, memory controllers,

More information

3-D Accelerator on Chip

3-D Accelerator on Chip 3-D Accelerator on Chip Third Prize 3-D Accelerator on Chip Institution: Participants: Instructor: Donga & Pusan University Young-Hee Won, Jin-Sung Park, Woo-Sung Moon Sam-Hak Jin Design Introduction Recently,

More information

Introduction to the Altera Qsys System Integration Tool. 1 Introduction. For Quartus Prime 15.1

Introduction to the Altera Qsys System Integration Tool. 1 Introduction. For Quartus Prime 15.1 Introduction to the Altera Qsys System Integration Tool For Quartus Prime 15.1 1 Introduction This tutorial presents an introduction to Altera s Qsys system integration tool, which is used to design digital

More information

Advanced Electronics Lab.

Advanced Electronics Lab. College of Engineering Course Book of 2010-2011 Advanced Electronics Lab. Mr. Araz Sabir Ameen M.Sc. in Electronics & Communications ALTERA DE2 Development and Education Board DE2 Package: The DE2 package

More information

Chapter 1 DE2-115 Package Package Contents The DE2-115 Board Assembly Getting Help... 6

Chapter 1 DE2-115 Package Package Contents The DE2-115 Board Assembly Getting Help... 6 1 CONTENTS Chapter 1 DE2-115 Package... 4 1.1 Package Contents... 4 1.2 The DE2-115 Board Assembly... 5 1.3 Getting Help... 6 Chapter 2 Introduction of the Altera DE2-115 Board... 7 2.1 Layout and Components...

More information

Laboratory Exercise 1

Laboratory Exercise 1 Laboratory Exercise 1 Switches, Lights, and Multiplexers The purpose of this exercise is to learn how to connect simple input and output devices to an FPGA chip and implement a circuit that uses these

More information

Using the Serial FlashLoader With the Quartus II Software

Using the Serial FlashLoader With the Quartus II Software Using the Serial FlashLoader With the Quartus II Software July 2006, ver. 3.0 Application Note 370 Introduction Using the Joint Test Action Group () interface, the Altera Serial FlashLoader (SFL) is 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

HyperBus Memory Controller (HBMC) Tutorial

HyperBus Memory Controller (HBMC) Tutorial Synaptic Labs' HyperBus Memory Controller (HBMC) Tutorial T005B: A Qsys based Nios II Reference design with a simple application running from HyperFlash and HyperRAM device using S/Labs' HBMC IP. The HyperRAM

More information

Laboratory Exercise 8

Laboratory Exercise 8 Laboratory Exercise 8 Introduction to Graphics and Animation The purpose of this exercise is to learn how to display images and perform animation. We will use the Nios II processor, in the pre-build DE-series

More information

NIOS II Processor Booting Methods In MAX 10 Devices

NIOS II Processor Booting Methods In MAX 10 Devices 2015.01.23 AN-730 Subscribe MAX 10 device is the first MAX device series which supports Nios II processor. Overview MAX 10 devices contain on-chip flash which segmented to two types: Configuration Flash

More information

Introduction to WebPACK 3.1. Using XILINX WebPACK Software to Create CPLD Designs

Introduction to WebPACK 3.1. Using XILINX WebPACK Software to Create CPLD Designs Introduction to WebPACK 3.1 Using XILINX WebPACK Software to Create CPLD Designs RELEASE DATE: 8/28/2000 All XS-prefix product designations are trademarks of XESS Corp. All XC-prefix product designations

More information

Design Flow Tutorial

Design Flow Tutorial Digital Design LU Design Flow Tutorial Jakob Lechner, Thomas Polzer {lechner, tpolzer}@ecs.tuwien.ac.at Department of Computer Engineering University of Technology Vienna Vienna, October 8, 2010 Contents

More information

2 nd Year Laboratory. Experiment: FPGA Design with Verilog. Department of Electrical & Electronic Engineering. Imperial College London.

2 nd Year Laboratory. Experiment: FPGA Design with Verilog. Department of Electrical & Electronic Engineering. Imperial College London. Department of Electrical & Electronic Engineering 2 nd Year Laboratory Experiment: FPGA Design with Verilog Objectives By the end of this experiment, you should know: How to design digital circuits using

More information

AN 818: Static Update Partial Reconfiguration Tutorial

AN 818: Static Update Partial Reconfiguration Tutorial AN 818: Static Update Partial Reconfiguration Tutorial for Intel Stratix 10 GX Updated for Intel Quartus Prime Design Suite: 18.1 Subscribe Latest document on the web: PDF HTML Contents Contents 1. Static

More information

QuartusII.doc 25/02/2005 Page 1

QuartusII.doc 25/02/2005 Page 1 1 Start Icon... 2 1.1 The Quartus II Screen... 2 2 Project creation... 2 3 Schematic entry... 5 3.1 Create new drawing... 5 3.2 Symbol selection... 7 3.3 Placement of an AND gate... 8 3.4 Deleting a symbol...

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

ADQ14 Development Kit

ADQ14 Development Kit ADQ14 Development Kit Documentation : P Devices PD : ecurity Class: : Release : P Devices Page 2(of 21) ecurity class Table of Contents 1 Tools...3 2 Overview...4 2.1 High-level block overview...4 3 How

More information

SCHEMATIC DESIGN IN QUARTUS

SCHEMATIC DESIGN IN QUARTUS SCHEMATIC DESIGN IN QUARTUS Consider the design of a three-bit prime number detector. Figure 1 shows the block diagram and truth table. The inputs are binary signals A, B, and C while the output is binary

More information

Generic Serial Flash Interface Intel FPGA IP Core User Guide

Generic Serial Flash Interface Intel FPGA IP Core User Guide Generic Serial Flash Interface Intel FPGA IP Core User Guide Updated for Intel Quartus Prime Design Suite: 18.0 Subscribe Send Feedback Latest document on the web: PDF HTML Contents Contents 1. Generic

More information

Customizable Flash Programmer User Guide

Customizable Flash Programmer User Guide Customizable Flash Programmer User Guide Subscribe Latest document on the web: PDF HTML Contents Contents 1. Customizable Flash Programmer Overview... 3 1.1. Device Family Support...3 1.2. Software Support...

More information

For Quartus II Software. This Quick Start Guide will show you how to set up a Quartus

For Quartus II Software. This Quick Start Guide will show you how to set up a Quartus Quick Start Guide For Quartus II Software This Quick Start Guide will show you how to set up a Quartus II project, enter timing requirements, and compile the design into an Altera device. 1 Three-Step

More information

Simulating Nios II Embedded Processor Designs

Simulating Nios II Embedded Processor Designs Simulating Nios II Embedded Processor Designs May 2004, ver.1.0 Application Note 351 Introduction The increasing pressure to deliver robust products to market in a timely manner has amplified the importance

More information

AN423: Configuring the MicroBlaster Passive Serial Software Driver

AN423: Configuring the MicroBlaster Passive Serial Software Driver AN423: Configuring the MicroBlaster Passive Serial Software Driver June 2008, version 1.1 Introduction The MicroBlaster TM software driver configures Altera programmable logic devices (PLDs) in passive

More information

4. Configuring Cyclone II Devices

4. Configuring Cyclone II Devices 4. Configuring Cyclone II Devices CII51013-2.0 Introduction Cyclone II devices use SRAM cells to store configuration data. Since SRAM memory is volatile, configuration data must be downloaded to Cyclone

More information

AN 825: Partially Reconfiguring a Design on Intel Stratix 10 GX FPGA Development Board

AN 825: Partially Reconfiguring a Design on Intel Stratix 10 GX FPGA Development Board AN 825: Partially Reconfiguring a Design on Intel Stratix 10 GX FPGA Updated for Intel Quartus Prime Design Suite: 18.1 Subscribe Latest document on the web: PDF HTML Contents Contents Partially Reconfiguring

More information

My First FPGA for Altera DE2-115 Board

My First FPGA for Altera DE2-115 Board My First FPGA for Altera DE2-115 Board 數位電路實驗 TA: 吳柏辰 Author: Trumen Outline Complete Your Verilog Design Assign The Device Add a PLL Megafunction Assign the Pins Create a Default TimeQuest SDC File Compile

More information

Zet x86 open source SoC

Zet x86 open source SoC http://zet.aluzina.org v1.1 19 Feb 2010 Contents 1 2 Contents 1 2 Terasic Altera DE1 - Cyclone II FPGA http://www.terasic.com.tw Physical devices 1 FPGA 2 SDRAM 3 SRAM 4 Flash 5 SD card 6 VGA 7 50 Mhz

More information