Lab 5 SDK Lab. Targeting MicroBlaze on the Spartan-3E Starter Kit. For Academic Use Only

Size: px
Start display at page:

Download "Lab 5 SDK Lab. Targeting MicroBlaze on the Spartan-3E Starter Kit. For Academic Use Only"

Transcription

1 For Academic Use Only Lab 5 SDK Lab Targeting MicroBlaze on the Spartan-3E Starter Kit This material exempt per Department of Commerce license exception TSU

2 Lab 5: SDK Lab Introduction This lab guides you through the process of adding timer and interrupt controller to an embedded system and writing a software application that utilizes these timer and interrupt controller. The SDK will be used to create and debug the software application. Objectives After completing this lab, you will be able to: Utilize the XPS timer with interrupt controller Assign an interrupt handler to the timer Develop an interrupt handler function Use SDK Debugger to set break points and view the content of variables and memory Procedure You will extend the hardware design created in lab 5 to include an XPS interrupt controller and XPS Timer (see Figure 5-1). You will develop an interrupt handler to count the interrupts generated from the timer. The steps for completing the lab are listed below: 1. Add a timer and interrupt controller 2. Create a SDK software project 3. Write an Interrupt Handler 4. Add a Linker script 5. Verify operation in hardware SDK Lab: 5-3

3 BRAM LMB BRAM CNTLR LMB BRAM CNTLR MicroBlaze MDM UART LEDs PSB GPIO GPIO XPS BRAM CNTLR BRAM DIP GPIO INTC Timer LCD MYIP MPMC CNTLR DDR PLB Figure 5-1. Design Updated from Previous Lab For each procedure within a primary step, there are general instructions (indicated by the symbol). These general instructions only provide a broad outline for performing the procedure. Below these general instructions, you will find accompanying step-by-step directions and illustrated figures that provide more detail for performing the procedure. If you feel confident about completing a procedure, you can skip the step-by-step directions and move on to the next general instruction. SDK Lab: 5-4

4 Add a Timer and Interrupt Controller Step 1 Create a lab5 folder and copy the contents of the lab4 folder into the lab5 folder, or copy the content of the labsolution\lab4 folder into the lab5 folder. Launch Xilinx Platform Studio (XPS) and open the project file. Create a lab5 folder in the C:\xup\embedded\labs directory and copy the contents from lab4 to lab5, or copy the content of the labsolution\lab4 folder into the lab5 folder Open XPS by selecting Start All Programs Xilinx ISE Design Suite 12 EDK Xilinx Platform Studio ❸ Browse to the lab5 directory and open the project system.xmp Add the XPS timer and XPS Interrupt Controller peripherals to the design from the IP Catalog, and connect them to the system according to the following table. Intr Irq CaptureTrig0 Interrupt INTERRUPT xps_intc_0 instance timer1 Microblaze_0_INTERRUPT delay instance net_gnd timer1 microblaze_0 instance Microblaze_0_INTERRUPT ❶ Add the XPS Timer/Counter peripheral from the DMA and Timer section of the IP Catalog, check Only One Timer is present option, and change its instance name to delay Add the XPS Interrupt Controller peripheral from the Clock, Reset, and Interrupt section of the IP Catalog with default settings ❸ Connect the timer and interrupt controller as a s (slave) device to the PLB bus (see Figure 5-2) Figure 5-2. Add and Connect the Interrupt Controller and Timer Peripherals ❹ Select Address tab and click Generate Addresses The generated addresses should look similar to that indicated in the figure below SDK Lab: 5-5

5 Figure 5-3. Generate Addresses for Interrupt Controller and Timer peripherals ❻ In the Ports section, type in timer1 as the Interrupt port connection of the delay instance, and hit enter ❼ Make a new net connection (see Figure 5-4) for the INTERRUPT (external interrupt request) port on the microblaze_0 instance by selecting New Connection from the drop-down box. This will create a net called microblaze_0_interrupt Figure 5-4. Make a new net connection to connect the MicroBlaze Interrupt port ❽ Connect the interrupt controller and timer as follows (refer to Figure 5-5) Connect interrupt output port Irq of the xps_intc_0 instance to the MicroBlaze interrupt input port using the microblaze_0_interrupt net Click in intr field of xps_intc_0 field to open the Interrupt Connection Dialog. Click on timer1 on left side, and click on sign to add to the Connected Interrupts field (right), and then click OK SDK Lab: 5-6

6 Figure 5-5. Connecting the Timer and Interrupt Controller Connect CaptureTrig0 port of delay instance to net_gnd to avoid erroneous interrupt request generated due to noice on the unconnected input port Figure 5-6. Connections Snapshot between Timer and Interrupt Controller ❾ Select Hardware Generate Bitstream Create an SDK Software Project Step 2 Launch SDK and create a new software application project for the lab5 XPS project. Import the lab5.c source file. Open SDK by selecting Project Export Hardware Design to SDK ❷ Check Include Bitstream and BMM File option and click on Export & Launch SDK button. This will implement the design if necessary and generate system.bit and system_bd.bmm SDK Lab: 5-7

7 Figure 5-7. Export to SDK and Launch SDK ❸ Right-click on standalone_bsp_0 in the Project Explorer window and select New C Project ❹ Enter lab5 in the Project Name field and choose Empty Project in Project type window Click Finish ❻ Select lab5 in the project view, right-click, and select Import ❼ Extend the General folder and Double-click on File System and browse to c:\xup\embedded\sources. Select lab5.c and click Finish SDK Lab: 5-8

8 Figure 5-8. Importing Source Code ❽ Right click on lab5 and select Changed Referenced BSP. Select standalone_bsp_0 and click OK. Note that both the Problems and Console tabs on the bottom report several compilation errors Note also that the project outline on the right side is updated to reflect the libraries and routines used in the source file Correct the errors. In the Problems tab, double-click on the first red x for the parse error. This will open the source file bring you around to the error place. SDK Lab: 5-9

9 Figure 5-9. First Error Add the missing global variable declaration as unsigned int, initialize it to the value of 1, and save the file. The first error message should disappear. ❸ Click the next error message to highlight the problem in the source code Figure Second Error ❹ Add the missing global variable declaration as int, inititalize it to the value of 0, and save the file. The additional error messages should disappear. SDK Lab:

10 Write an Interrupt Handler Step 3 Create the interrupt handler for the XPS timer Go to where the interrupt handler function has already been stubbed out in the source file (a fast way to do this is to click on the function in the outline view). Create new local variable for the timer_int_handler function: unsigned int csr; The first step in creating an XPS timer interrupt handler is to verify that the XPS timer caused the interrupt. This can be determined by looking at the XPS Timer Control Status Register. Open the API documentation to determine how the Control Status Register works. In the XPS System Assembly View window, right-click the delay instance and select View PDF Datasheet to open the data sheet Go to the Register Description section in the data sheet and study the TCSR0 Register. Notice that bit 23 has the following description: Timer0 Interrupt Indicates that the condition for an interrupt on this timer has occurred. If the timer mode is capture and the timer is enabled, this bit indicates a capture has occurred. If the mode is generate, this bit indicates the counter has rolled over. Must be cleared by writing a 1 Read: 0 - No interrupt has occurred 1 - Interrupt has occurred Write: 0 No change in state of T0INT 1 Clear T0INT (clear to 0 ) The level 0 driver for the XPS timer provides two functions that read and write to the Control Status Register. View the timer API doc by right-clicking on the delay instance in the System Assembly View and selecting Driver:tmrctr_v2_00_a View API Documentation. In the API document, click on the File List link at the top of the document, then click on the link labeled xtmrctr_l.h in the file list. This brings up the document on identifiers and the lowlevel driver functions declared in this header file. Scroll down in the document and click on the link for the XTmrCtr_GetControlStatusReg( ) function to read more about this function. Use this function to determine whether an interrupt has occurred. The following is the pertinent information found in the XPS timer documentation: XTmrCtr_GetControlStatusReg ( BaseAddress, TmrCtrNumber ) Get the Control Status Register of a timer counter Parameters: SDK Lab:

11 o o BaseAddress is the base address of the device. TmrCtrNumber is the specific timer counter within the device, a zero-based number, 0 -> (XTC_DEVICE_TIMER_COUNT - 1) Returns: o The value read from the register, a 32-bit value ❸ Add the XTmrCtr_GetControlStatusReg function call to the code with the associated parameters. The resulting 32-bit return value should be stored in the variable csr. csr = XTmrCtr_GetControlStatusReg(baseaddr, 0); Note: Substitute baseaddr with the base address for the delay peripheral. Refer to xparameters.h ❹ Complete the Interrupt handler (see Figure 5-15) according to the steps below 1. Test to see if bit 23 is set by ANDing csr with the XTC_CSR_INT_OCCURED_MASK parameter. 2. Increment a counter if an interrupt was taken. 3. Display the count value by using the LEDs_8Bit peripheral and print the value using xil_printf (same functionality as printf with the exception of floating-point handling) Hint: You may use the XGpio_DiscreteWrite () function 4. Clear the interrupt by using the following function call: XTmrCtr_SetControlStatusReg(baseaddr, 0, csr); The completed handler should look like as shown in the next figure SDK Lab:

12 Figure Completed Interrupt Handler Code ❺ Save the file, this should compile the source successully. Add Linker Script Step 4 Generate the linker script by assigning code section to ilmb and data section to xps_bram. Set heap and stack to 0x400 each. Right-click lab5 in project view and select Generate Linker Script Set the heap and stack size to 1024 each ❸ Assign Code section to ilmb_cntlr_dlmb_cntlr and Data, Stack and Heap sections to xps_bram_if_cntlr (this is necessary as each of the memory is too small to hold everything) SDK Lab:

13 Figure Generate Linker Script ❹ Click Generate to generate the linker script, add to the project and recompile the program. Look in the console to answer the following question.? 1. What is the size of the compiled program?.text segment:.data segment:.bss segment: Total in decimal: Total in hexadecimal: Verify Operation in Hardware Step 5 Generate the bitstream and download to the Spartan-3E starter kit. Connect and power the board ❶ Select Xilinx Tools Program FPGA ❷ Browse and select system.bit and system_bd.bmm files from the lab5\implementation (this step is required for 12.2 version. For other version, you may skip this step and try with the default paths to see if it works) SDK Lab:

14 Figure Setting Up Run Configuration ❸ Click Program This will execute Data2Mem program to combine the bootloop executable with hardware bitstream, generate the download.bit file, and configure the FPGA. ❹ Select Terminal tab (near console area), and click on New Terminal Connection ( ) ❺ Select correct COM port and baudrate, and click OK Launch Debugger and debug ❶ From the SDK Menu, select Run Run configurations This will present a screen summarizing the existing Launch Configurations ❷ Under Configurations, select Xilinx C/C++ ELF ❸ Click on New to add a new Launch configuration. SDK Lab:

15 Figure Setting Up Run Configuration ❹ Click on the Run button. The application will run. You should see messages in the Console and the LEDs should be flickering Figure Resuming an Application ❺ Click Debug to invoke the debug session ❻ Click YES to stop the current execution. Click YES to launch the Debug perspective ❼ Right-click in the Variables tab and select Add Global Variables All global variables will be displayed. Select count variable and click OK SDK Lab:

16 Monitor variables and memory content. ❶ Double-click to set a breakpoint on the line in lab5.c where count is written to LED Figure Setting Breakpoint ❷ Click on Resume button to continue executing the program up until the breakpoint. As you do step over, you will notice that the count variable value is changing. ❸ Click on the memory tab. If you do not see it, go to Window Show View Memory ❹ Click the sign to add a Memory Monitor Figure Adding Memory Address ❺ Enter the address for the count variable as follows, and click OK SDK Lab:

17 Figure Monitoring a Variable ❻ Click the Resume button to continue execution of the program. Notice that the count variables increment every time you click resume. Watch count value increment Figure Viewing Memory Content of the count variable ❼ Terminate the session by clicking on the Terminate button. Click to terminate session Figure Terminating a Debug Session ❽ Close the SDK application and close the XPS project SDK Lab:

18 Conclusion This lab led you through adding an XPS timer and interrupt controller, and assigning an interrupt handler function to the interrupting device via the software platform settings. You developed an interrupt handler function and tested it in hardware. Additionally, you used the SDK debugger to view the content of variables and memory. A Answers 1. What is the size of the compiled program?.text segment: 6954.data segment: 388.bss segment: 2122 Total in decimal: 9454 Total in hexadecimal: 24ee SDK Lab:

19 A Completed MHS File # ####################################################################### ####### # Created by Base System Builder Wizard for Xilinx EDK 12.2 Build EDK_MS2.63c # Tue Jul 20 10:08: # Target Board: Xilinx Spartan-3E Starter Board Rev D # Family: spartan3e # Device: XC3S500e # Package: FG320 # Speed Grade: -4 # Processor number: 1 # Processor 1: microblaze_0 # System clock frequency: 50.0 # Debug Interface: On-Chip HW Debug Module # ####################################################################### ####### PARAMETER VERSION = PORT fpga_0_rs232_dce_rx_pin = fpga_0_rs232_dce_rx_pin, DIR = I PORT fpga_0_rs232_dce_tx_pin = fpga_0_rs232_dce_tx_pin, DIR = O PORT fpga_0_leds_8bit_gpio_io_o_pin = fpga_0_leds_8bit_gpio_io_o_pin, DIR = O, VEC = [0:7] PORT fpga_0_ddr_sdram_ddr_clk_pin = fpga_0_ddr_sdram_ddr_clk_pin, DIR = O PORT fpga_0_ddr_sdram_ddr_clk_n_pin = fpga_0_ddr_sdram_ddr_clk_n_pin, DIR = O PORT fpga_0_ddr_sdram_ddr_ce_pin = fpga_0_ddr_sdram_ddr_ce_pin, DIR = O PORT fpga_0_ddr_sdram_ddr_cs_n_pin = fpga_0_ddr_sdram_ddr_cs_n_pin, DIR = O PORT fpga_0_ddr_sdram_ddr_ras_n_pin = fpga_0_ddr_sdram_ddr_ras_n_pin, DIR = O PORT fpga_0_ddr_sdram_ddr_cas_n_pin = fpga_0_ddr_sdram_ddr_cas_n_pin, DIR = O PORT fpga_0_ddr_sdram_ddr_we_n_pin = fpga_0_ddr_sdram_ddr_we_n_pin, DIR = O PORT fpga_0_ddr_sdram_ddr_bankaddr_pin = fpga_0_ddr_sdram_ddr_bankaddr_pin, DIR = O, VEC = [1:0] PORT fpga_0_ddr_sdram_ddr_addr_pin = fpga_0_ddr_sdram_ddr_addr_pin, DIR = O, VEC = [12:0] PORT fpga_0_ddr_sdram_ddr_dq_pin = fpga_0_ddr_sdram_ddr_dq_pin, DIR = IO, VEC = [15:0] PORT fpga_0_ddr_sdram_ddr_dm_pin = fpga_0_ddr_sdram_ddr_dm_pin, DIR = O, VEC = [1:0] PORT fpga_0_ddr_sdram_ddr_dqs_pin = fpga_0_ddr_sdram_ddr_dqs_pin, DIR = IO, VEC = [1:0] PORT fpga_0_ddr_sdram_ddr_dqs_div_io_pin = fpga_0_ddr_sdram_ddr_dqs_div_io_pin, DIR = IO PORT fpga_0_clk_1_sys_clk_pin = dcm_clk_s, DIR = I, SIGIS = CLK, CLK_FREQ = SDK Lab:

20 PORT fpga_0_rst_1_sys_rst_pin = sys_rst_s, DIR = I, SIGIS = RST, RST_POLARITY = 1 PORT push_gpio_io_i_pin = push_gpio_io_i, DIR = I, VEC = [0:3] PORT dip_gpio_io_i_pin = dip_gpio_io_i, DIR = I, VEC = [0:3] PORT lcd_ip_0_lcd_pin = lcd_ip_0_lcd, DIR = O, VEC = [0:6] BEGIN microblaze PARAMETER INSTANCE = microblaze_0 PARAMETER C_AREA_OPTIMIZED = 1 PARAMETER C_DEBUG_ENABLED = 1 PARAMETER HW_VER = 7.30.b BUS_INTERFACE DLMB = dlmb BUS_INTERFACE ILMB = ilmb BUS_INTERFACE DPLB = mb_plb BUS_INTERFACE IPLB = mb_plb BUS_INTERFACE DEBUG = microblaze_0_mdm_bus PORT MB_RESET = mb_reset PORT INTERRUPT = microblaze_0_interrupt BEGIN plb_v46 PARAMETER INSTANCE = mb_plb PARAMETER HW_VER = 1.04.a PORT PLB_Clk = clk_50_0000mhz PORT SYS_Rst = sys_bus_reset BEGIN lmb_v10 PARAMETER INSTANCE = ilmb PARAMETER HW_VER = 1.00.a PORT LMB_Clk = clk_50_0000mhz PORT SYS_Rst = sys_bus_reset BEGIN lmb_v10 PARAMETER INSTANCE = dlmb PARAMETER HW_VER = 1.00.a PORT LMB_Clk = clk_50_0000mhz PORT SYS_Rst = sys_bus_reset BEGIN lmb_bram_if_cntlr PARAMETER INSTANCE = dlmb_cntlr PARAMETER HW_VER = 2.10.b PARAMETER C_BASEADDR = 0x PARAMETER C_HIGHADDR = 0x00001fff BUS_INTERFACE SLMB = dlmb BUS_INTERFACE BRAM_PORT = dlmb_port BEGIN lmb_bram_if_cntlr PARAMETER INSTANCE = ilmb_cntlr PARAMETER HW_VER = 2.10.b PARAMETER C_BASEADDR = 0x PARAMETER C_HIGHADDR = 0x00001fff BUS_INTERFACE SLMB = ilmb SDK Lab:

21 BUS_INTERFACE BRAM_PORT = ilmb_port BEGIN bram_block PARAMETER INSTANCE = lmb_bram PARAMETER HW_VER = 1.00.a BUS_INTERFACE PORTA = ilmb_port BUS_INTERFACE PORTB = dlmb_port BEGIN xps_uartlite PARAMETER INSTANCE = RS232_DCE PARAMETER C_BAUDRATE = PARAMETER C_DATA_BITS = 8 PARAMETER C_USE_PARITY = 0 PARAMETER C_ODD_PARITY = 0 PARAMETER HW_VER = 1.01.a PARAMETER C_BASEADDR = 0x PARAMETER C_HIGHADDR = 0x8400ffff BUS_INTERFACE SPLB = mb_plb PORT RX = fpga_0_rs232_dce_rx_pin PORT TX = fpga_0_rs232_dce_tx_pin BEGIN xps_gpio PARAMETER INSTANCE = LEDs_8Bit PARAMETER C_ALL_INPUTS = 0 PARAMETER C_GPIO_WIDTH = 8 PARAMETER C_INTERRUPT_PRESENT = 0 PARAMETER C_IS_DUAL = 0 PARAMETER HW_VER = 2.00.a PARAMETER C_BASEADDR = 0x PARAMETER C_HIGHADDR = 0x8144ffff BUS_INTERFACE SPLB = mb_plb PORT GPIO_IO_O = fpga_0_leds_8bit_gpio_io_o_pin BEGIN mpmc PARAMETER INSTANCE = DDR_SDRAM PARAMETER C_NUM_PORTS = 1 PARAMETER C_SPECIAL_BOARD = S3E_STKIT PARAMETER C_MEM_TYPE = DDR PARAMETER C_MEM_PARTNO = MT46V32M16-6 PARAMETER C_MEM_DATA_WIDTH = 16 PARAMETER C_PIM0_BASETYPE = 2 PARAMETER HW_VER = 6.01.a PARAMETER C_MPMC_BASEADDR = 0x8c PARAMETER C_MPMC_HIGHADDR = 0x8fffffff BUS_INTERFACE SPLB0 = mb_plb PORT MPMC_Clk0 = clk_100_0000mhzdcm0 PORT MPMC_Clk90 = clk_100_0000mhz90dcm0 PORT MPMC_Rst = sys_periph_reset PORT DDR_Clk = fpga_0_ddr_sdram_ddr_clk_pin PORT DDR_Clk_n = fpga_0_ddr_sdram_ddr_clk_n_pin PORT DDR_CE = fpga_0_ddr_sdram_ddr_ce_pin PORT DDR_CS_n = fpga_0_ddr_sdram_ddr_cs_n_pin PORT DDR_RAS_n = fpga_0_ddr_sdram_ddr_ras_n_pin SDK Lab:

22 PORT DDR_CAS_n = fpga_0_ddr_sdram_ddr_cas_n_pin PORT DDR_WE_n = fpga_0_ddr_sdram_ddr_we_n_pin PORT DDR_BankAddr = fpga_0_ddr_sdram_ddr_bankaddr_pin PORT DDR_Addr = fpga_0_ddr_sdram_ddr_addr_pin PORT DDR_DQ = fpga_0_ddr_sdram_ddr_dq_pin PORT DDR_DM = fpga_0_ddr_sdram_ddr_dm_pin PORT DDR_DQS = fpga_0_ddr_sdram_ddr_dqs_pin PORT DDR_DQS_Div_O = fpga_0_ddr_sdram_ddr_dqs_div_io_pin PORT DDR_DQS_Div_I = fpga_0_ddr_sdram_ddr_dqs_div_io_pin BEGIN clock_generator PARAMETER INSTANCE = clock_generator_0 PARAMETER C_CLKIN_FREQ = PARAMETER C_CLKOUT0_FREQ = PARAMETER C_CLKOUT0_PHASE = 90 PARAMETER C_CLKOUT0_GROUP = DCM0 PARAMETER C_CLKOUT0_BUF = TRUE PARAMETER C_CLKOUT1_FREQ = PARAMETER C_CLKOUT1_PHASE = 0 PARAMETER C_CLKOUT1_GROUP = DCM0 PARAMETER C_CLKOUT1_BUF = TRUE PARAMETER C_CLKOUT2_FREQ = PARAMETER C_CLKOUT2_PHASE = 0 PARAMETER C_CLKOUT2_GROUP = NONE PARAMETER C_CLKOUT2_BUF = TRUE PARAMETER C_EXT_RESET_HIGH = 1 PARAMETER HW_VER = 4.00.a PORT CLKIN = dcm_clk_s PORT CLKOUT0 = clk_100_0000mhz90dcm0 PORT CLKOUT1 = clk_100_0000mhzdcm0 PORT CLKOUT2 = clk_50_0000mhz PORT RST = sys_rst_s PORT LOCKED = Dcm_all_locked BEGIN mdm PARAMETER INSTANCE = mdm_0 PARAMETER C_MB_DBG_PORTS = 1 PARAMETER C_USE_UART = 1 PARAMETER C_UART_WIDTH = 8 PARAMETER HW_VER = 1.00.g PARAMETER C_BASEADDR = 0x PARAMETER C_HIGHADDR = 0x8440ffff BUS_INTERFACE SPLB = mb_plb BUS_INTERFACE MBDEBUG_0 = microblaze_0_mdm_bus PORT Debug_SYS_Rst = Debug_SYS_Rst BEGIN proc_sys_reset PARAMETER INSTANCE = proc_sys_reset_0 PARAMETER C_EXT_RESET_HIGH = 1 PARAMETER HW_VER = 2.00.a PORT Slowest_sync_clk = clk_50_0000mhz PORT Ext_Reset_In = sys_rst_s PORT MB_Debug_Sys_Rst = Debug_SYS_Rst PORT Dcm_locked = Dcm_all_locked SDK Lab:

23 PORT MB_Reset = mb_reset PORT Bus_Struct_Reset = sys_bus_reset PORT Peripheral_Reset = sys_periph_reset BEGIN xps_gpio PARAMETER INSTANCE = dip PARAMETER HW_VER = 2.00.a PARAMETER C_GPIO_WIDTH = 4 PARAMETER C_ALL_INPUTS = 1 PARAMETER C_BASEADDR = 0x PARAMETER C_HIGHADDR = 0x8142ffff BUS_INTERFACE SPLB = mb_plb PORT GPIO_IO_I = dip_gpio_io_i BEGIN xps_gpio PARAMETER INSTANCE = push PARAMETER HW_VER = 2.00.a PARAMETER C_GPIO_WIDTH = 4 PARAMETER C_ALL_INPUTS = 1 PARAMETER C_BASEADDR = 0x PARAMETER C_HIGHADDR = 0x8140ffff BUS_INTERFACE SPLB = mb_plb PORT GPIO_IO_I = push_gpio_io_i BEGIN lcd_ip PARAMETER INSTANCE = lcd_ip_0 PARAMETER HW_VER = 1.00.a PARAMETER C_BASEADDR = 0xcf PARAMETER C_HIGHADDR = 0xcf40ffff BUS_INTERFACE SPLB = mb_plb PORT lcd = lcd_ip_0_lcd BEGIN bram_block PARAMETER INSTANCE = bram_block_0 PARAMETER HW_VER = 1.00.a BUS_INTERFACE PORTA = xps_bram_if_cntlr_0_porta BEGIN xps_bram_if_cntlr PARAMETER INSTANCE = xps_bram_if_cntlr_0 PARAMETER HW_VER = 1.00.b PARAMETER C_SPLB_NATIVE_DWIDTH = 32 PARAMETER C_BASEADDR = 0x PARAMETER C_HIGHADDR = 0x88209fff BUS_INTERFACE SPLB = mb_plb BUS_INTERFACE PORTA = xps_bram_if_cntlr_0_porta BEGIN xps_timer PARAMETER INSTANCE = delay PARAMETER HW_VER = 1.02.a PARAMETER C_ONE_TIMER_ONLY = 1 PARAMETER C_BASEADDR = 0x83c00000 SDK Lab:

24 PARAMETER C_HIGHADDR = 0x83c0ffff BUS_INTERFACE SPLB = mb_plb PORT CaptureTrig0 = net_gnd PORT Interrupt = timer1 BEGIN xps_intc PARAMETER INSTANCE = xps_intc_0 PARAMETER HW_VER = 2.01.a PARAMETER C_BASEADDR = 0x PARAMETER C_HIGHADDR = 0x8180ffff BUS_INTERFACE SPLB = mb_plb PORT Intr = timer1 PORT Irq = microblaze_0_interrupt SDK Lab:

Lab 2: Adding IP to a Hardware Design Lab

Lab 2: Adding IP to a Hardware Design Lab For Academic Use Only Lab 2: Adding IP to a Hardware Design Lab Targeting MicroBlaze on the Spartan -3E Kit This material exempt per Department of Commerce license exception TSU Lab 2: Adding IP to a Hardware

More information

Lab6 HW/SW System Debug

Lab6 HW/SW System Debug For Academic Use Only Lab6 HW/SW System Debug Targeting MicroBlaze on the Spartan-3E Starter Kit This material exempt per Department of Commerce license exception TSU Lab 6: HW/SW System Debug Lab Introduction

More information

Lab 1: Simple Hardware Design

Lab 1: Simple Hardware Design For Academic Use Only Lab 1: Simple Hardware Design Targeting MicroBlaze on Spartan -3E Starter Kit This material exempt per Department of Commerce license exception TSU Introduction Objectives Procedure

More information

Lab 3: Adding Custom IP to an Embedded System Lab

Lab 3: Adding Custom IP to an Embedded System Lab For Academic Use Only Lab 3: Adding Custom IP to an Embedded System Lab Targeting MicroBlaze on Spartan -3E Starter Kit This material exempt per Department of Commerce license exception TSU Lab 3: Adding

More information

Advanced Software Writing Using AXI

Advanced Software Writing Using AXI Lab Workbook Introduction This lab guides you through the process of adding timer and interrupt controller to an embedded system and writing a software application that utilizes these timer and interrupt

More information

Adding Custom IP to an Embedded System Using AXI

Adding Custom IP to an Embedded System Using AXI Lab Workbook Adding Custom IP to an Embedded System Using AXI Adding Custom IP to an Embedded System Using AXI Introduction This lab guides you through the process of adding a custom peripheral to a processor

More information

Module 3: Adding Custom IP to an Embedded System

Module 3: Adding Custom IP to an Embedded System For Academic Use Only Systemy wbudowane laboratorium Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki Zakład InŜynierii Komputerowej Module

More information

SP605 Built-In Self Test Flash Application

SP605 Built-In Self Test Flash Application SP605 Built-In Self Test Flash Application March 2011 Copyright 2011 Xilinx XTP062 Revision History Date Version Description 03/01/11 13.1 Up-rev 12.4 BIST Design to 13.1. 12/21/10 12.4 Up-rev 12.3 BIST

More information

Module 2: Adding IP to a Hardware Design

Module 2: Adding IP to a Hardware Design For Academic Use Only Systemy wbudowane laboratorium Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Informatyki i Elektroniki Zakład InŜynierii Komputerowej Module

More information

Hardware Design Using EDK

Hardware Design Using EDK Hardware Design Using EDK This material exempt per Department of Commerce license exception TSU 2007 Xilinx, Inc. All Rights Reserved Objectives After completing this module, you will be able to: Describe

More information

Virtex-4 PowerPC Example Design. UG434 (v1.2) January 17, 2008

Virtex-4 PowerPC Example Design. UG434 (v1.2) January 17, 2008 Virtex-4 PowerPC Example Design R R 2007-2008 Xilinx, Inc. All Rights Reserved. XILINX, the Xilinx logo, and other designated brands included herein are trademarks of Xilinx, Inc. All other trademarks

More information

SP601 Built-In Self Test Flash Application

SP601 Built-In Self Test Flash Application SP601 Built-In Self Test Flash Application December 2009 Copyright 2009 Xilinx XTP041 Note: This presentation applies to the SP601 Overview Xilinx SP601 Board Software Requirements SP601 Setup SP601 BIST

More information

ML605 Built-In Self Test Flash Application

ML605 Built-In Self Test Flash Application ML605 Built-In Self Test Flash Application July 2011 Copyright 2011 Xilinx XTP056 Revision History Date Version Description 07/06/11 13.2 Up-rev 13.1 BIST Design to 13.2. 03/01/11 13.1 Up-rev 12.4 BIST

More information

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

ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University Prof. Sunil Khatri TA: Monther Abusultan (Lab exercises created by A. Targhetta / P. Gratz)

More information

Interrupt Creation and Debug on ML403

Interrupt Creation and Debug on ML403 Interrupt Creation and Debug on ML403 This tutorial will demonstrate the different debugging techniques used for debugging Interrupt based applications. To show this we will build a simple Interrupt application

More information

ML605 Built-In Self Test Flash Application

ML605 Built-In Self Test Flash Application ML605 Built-In Self Test Flash Application October 2010 Copyright 2010 Xilinx XTP056 Revision History Date Version Description 10/05/10 12.3 Up-rev 12.2 BIST Design to 12.3. Added AR38127 Added AR38209

More information

Building an Embedded Processor System on Xilinx NEXYS3 FPGA and Profiling an Application: A Tutorial

Building an Embedded Processor System on Xilinx NEXYS3 FPGA and Profiling an Application: A Tutorial Building an Embedded Processor System on Xilinx NEXYS3 FPGA and Profiling an Application: A Tutorial Introduction: Modern FPGA s are equipped with a lot of resources that allow them to hold large digital

More information

Creating the AVS6LX9MBHP211 MicroBlaze Hardware Platform for the Spartan-6 LX9 MicroBoard Version

Creating the AVS6LX9MBHP211 MicroBlaze Hardware Platform for the Spartan-6 LX9 MicroBoard Version Creating the AVS6LX9MBHP211 MicroBlaze Hardware Platform for the Spartan-6 LX9 MicroBoard Version 13.2.01 Revision History Version Description Date 12.4.01 Initial release for EDK 12.4 09 Mar 2011 12.4.02

More information

Spartan-3 MicroBlaze Sample Project

Spartan-3 MicroBlaze Sample Project Spartan-3 MicroBlaze Sample Project R 2006 Xilinx, Inc. All Rights Reserved. XILINX, the Xilinx logo, and other designated brands included herein are trademarks of Xilinx, Inc. All other trademarks are

More information

SP605 Standalone Applications

SP605 Standalone Applications SP605 Standalone Applications July 2011 Copyright 2011 Xilinx XTP064 Revision History Date Version Description 07/06/11 13.2 Up-rev 13.1 GPIO_HDR Design to 13.2. 03/01/11 13.1 Up-Rev 12.4 GPIO_HDR Design

More information

Reference System: Determining the Optimal DCM Phase Shift for the DDR Feedback Clock for Spartan-3E Author: Ed Hallett

Reference System: Determining the Optimal DCM Phase Shift for the DDR Feedback Clock for Spartan-3E Author: Ed Hallett XAPP977 (v1.1) June 1, 2007 R Application Note: Embedded Processing Reference System: Determining the Optimal DCM Phase Shift for the DDR Feedback Clock for Spartan-3E Author: Ed Hallett Abstract This

More information

Spartan-6 LX9 MicroBoard Embedded Tutorial. Tutorial 2 Adding EDK IP to an Embedded System

Spartan-6 LX9 MicroBoard Embedded Tutorial. Tutorial 2 Adding EDK IP to an Embedded System Spartan-6 LX9 MicroBoard Embedded Tutorial Tutorial 2 Adding EDK IP to an Embedded System Version 13.1.01 Revision History Version Description Date 13.1.01 Initial release for EDK 13.1 5/16/2011 Table

More information

Arty MicroBlaze Soft Processing System Implementation Tutorial

Arty MicroBlaze Soft Processing System Implementation Tutorial ARTY MICROBLAZE SOFT PROCESSING SYSTEM IMPLEMENTATION TUTORIAL 1 Arty MicroBlaze Soft Processing System Implementation Tutorial Daniel Wimberly, Sean Coss Abstract A Microblaze soft processing system was

More information

427 Class Notes Lab2: Real-Time Clock Lab

427 Class Notes Lab2: Real-Time Clock Lab This document will lead you through the steps of creating a new hardware base system that contains the necessary components and connections for the Real-Time Clock Lab. 1. Start up Xilinx Platform Studio

More information

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

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

More information

Xilinx Platform Studio tutorial

Xilinx Platform Studio tutorial Xilinx Platform Studio tutorial Per.Anderson@cs.lth.se April 12, 2005 This tutorial intend to show you how to create an initial system configuration. From Xilinx Platform Studio(XPS) version 6.1 this has

More information

BFM Simulation in Platform Studio

BFM Simulation in Platform Studio BFM Simulation in Platform Studio Introduction This document describes the basics of Bus Functional Model simulation within Xilinx Platform Studio. The following topics are included: Introduction Bus Functional

More information

Spartan-6 LX9 MicroBoard Embedded Tutorial. Tutorial 1 Creating an AXI-based Embedded System

Spartan-6 LX9 MicroBoard Embedded Tutorial. Tutorial 1 Creating an AXI-based Embedded System Spartan-6 LX9 MicroBoard Embedded Tutorial Tutorial 1 Creating an AXI-based Embedded System Version 13.1.01 Revision History Version Description Date 13.1.01 Initial release for EDK 13.1 5/15/2011 Table

More information

Zynq System Architecture Design Lab Workbook Beta

Zynq System Architecture Design Lab Workbook Beta Zynq System Architecture Design Lab Workbook Beta Zynq System Architecture Design Lab Workbook Beta Xilinx is disclosing this Document and Intellectual Property (hereinafter the Design ) to you for use

More information

UART Interrupt Creation on Spartan 3A

UART Interrupt Creation on Spartan 3A UART Interrupt Creation on Spartan 3A This tutorial will demonstrate the UART Interrupt based application. To show this we will build a simple Interrupt application that will use the hyper-terminal to

More information

Getting Started Guide with AXM-A30

Getting Started Guide with AXM-A30 Series PMC-VFX70 Virtex-5 Based FPGA PMC Module Getting Started Guide with AXM-A30 ACROMAG INCORPORATED Tel: (248) 295-0310 30765 South Wixom Road Fax: (248) 624-9234 P.O. BOX 437 Wixom, MI 48393-7037

More information

QSPI Flash Memory Bootloading In Standard SPI Mode with KC705 Platform

QSPI Flash Memory Bootloading In Standard SPI Mode with KC705 Platform Summary: QSPI Flash Memory Bootloading In Standard SPI Mode with KC705 Platform KC705 platform has nonvolatile QSPI flash memory. It can be used to configure FPGA and store application image. This tutorial

More information

Hello World on the ATLYS Board. Building the Hardware

Hello World on the ATLYS Board. Building the Hardware 1. Start Xilinx Platform Studio Hello World on the ATLYS Board Building the Hardware 2. Click on Create New Blank Project Using Base System Builder For the project file field, browse to the directory where

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

Virtex-5 FXT PowerPC PowerPC 440 and MicroBlaze 440

Virtex-5 FXT PowerPC PowerPC 440 and MicroBlaze 440 Virtex-5 FXT PowerPC PowerPC 440 and MicroBlaze 440 and Edition MicroBlaze Kit Reference Systems [Guide Subtitle] [optional] [optional] R R Xilinx is disclosing this user guide, manual, release note, and/or

More information

SP601 Standalone Applications

SP601 Standalone Applications SP601 Standalone Applications December 2009 Copyright 2009 Xilinx XTP053 Note: This presentation applies to the SP601 Overview Xilinx SP601 Board Software Requirements SP601 Setup Multi-pin Wake-up GPIO

More information

Writing Basic Software Application

Writing Basic Software Application Lab Workbook Introduction This lab guides you through the process of writing a basic software application. The software you will develop will write to the LEDs on the Zynq board. An AXI BRAM controller

More information

Spartan-6 LX9 MicroBoard Embedded Tutorial. Lab 6 Creating a MicroBlaze SPI Flash Bootloader

Spartan-6 LX9 MicroBoard Embedded Tutorial. Lab 6 Creating a MicroBlaze SPI Flash Bootloader Spartan-6 LX9 MicroBoard Embedded Tutorial Lab 6 Creating a MicroBlaze SPI Flash Bootloader Version 13.1.01 Revision History Version Description Date 13.1.01 Initial release for EDK 13.1 5/17/11 Table

More information

Reference System: XPS LL Tri-Mode Ethernet MAC Embedded Systems for MicroBlaze and PowerPC Processors Author: Ed Hallett

Reference System: XPS LL Tri-Mode Ethernet MAC Embedded Systems for MicroBlaze and PowerPC Processors Author: Ed Hallett XAPP1041 (v2.0) September 24, 2008 Application Note: Embedded Processing eference System: XPS LL Tri-Mode Ethernet MAC Embedded Systems for MicroBlaze and PowerPC Processors Author: Ed Hallett Abstract

More information

Microblaze for Linux Howto

Microblaze for Linux Howto Microblaze for Linux Howto This tutorial shows how to create a Microblaze system for Linux using Xilinx XPS on Windows. The design is targeting the Spartan-6 Pipistello LX45 development board using ISE

More information

Reference System: MCH OPB SDRAM with OPB Central DMA Author: James Lucero

Reference System: MCH OPB SDRAM with OPB Central DMA Author: James Lucero Application Note: Embedded Processing XAPP909 (v1.3) June 5, 2007 eference System: MCH OPB SDAM with OPB Central DMA Author: James Lucero Abstract This application note demonstrates the use of the Multi-CHannel

More information

ML410 BSB Design Adding the PLB TEMAC with RGMII Using EDK 8.2i SP1. April

ML410 BSB Design Adding the PLB TEMAC with RGMII Using EDK 8.2i SP1. April ML410 BSB Design Adding the PLB TEMAC with RGMII Using EDK 8.2i SP1 April 2007 Overview Hardware Setup Software Requirements Generate a Bitstream Transfer the Bitstream onto the FPGA Loading a Bootloop

More information

Use Vivado to build an Embedded System

Use Vivado to build an Embedded System Introduction This lab guides you through the process of using Vivado to create a simple ARM Cortex-A9 based processor design targeting the ZedBoard development board. You will use Vivado to create the

More information

Getting Started Guide

Getting Started Guide Series PMC-VFX70 Virtex-5 Based FPGA PMC Module Getting Started Guide ACROMAG INCORPORATED Tel: (248) 295-0310 30765 South Wixom Road Fax: (248) 624-9234 P.O. BOX 437 Wixom, MI 48393-7037 U.S.A. solutions@acromag.com

More information

System Debug. This material exempt per Department of Commerce license exception TSU Xilinx, Inc. All Rights Reserved

System Debug. This material exempt per Department of Commerce license exception TSU Xilinx, Inc. All Rights Reserved System Debug This material exempt per Department of Commerce license exception TSU Objectives After completing this module, you will be able to: Describe GNU Debugger (GDB) functionality Describe Xilinx

More information

DisplayPort Transmit Reference Design Author: Vamsi Krishna, Saambhavi Baskaran

DisplayPort Transmit Reference Design Author: Vamsi Krishna, Saambhavi Baskaran Application Note: Kintex-7 Family XAPP1178 (v1.0) September 13, 2013 DisplayPort Transmit Reference Design Author: Vamsi Krishna, Saambhavi Baskaran Summary This reference design demonstrates the implementation

More information

Reference System: MCH OPB EMC with OPB Central DMA Author: Sundararajan Ananthakrishnan

Reference System: MCH OPB EMC with OPB Central DMA Author: Sundararajan Ananthakrishnan Application Note: Embedded Processing XAPP923 (v1.2) June 5, 2007 eference System: MCH OPB EMC with OPB Central DMA Author: Sundararajan Ananthakrishnan Summary This application note demonstrates the use

More information

XA Automotive ECU Development Kit

XA Automotive ECU Development Kit Application Note eference System XPS MOST NIC Controller XAPP1054 (v1.0) April 25, 2008 eference System MOST NIC Using the XA Automotive ECU Development Kit Abstract This application note describes a reference

More information

ML410 BSB DDR2 Design Creation Using 8.2i SP1 EDK Base System Builder (BSB) April

ML410 BSB DDR2 Design Creation Using 8.2i SP1 EDK Base System Builder (BSB) April ML40 BSB DDR2 Design Creation Using 8.2i SP EDK Base System Builder (BSB) April 2007 Overview Hardware Setup Software Requirements Create a BSB DDR2 System Build (BSB) in EDK Generate a Bitstream Transfer

More information

Dual Processor Reference Design Suite Author: Vasanth Asokan

Dual Processor Reference Design Suite Author: Vasanth Asokan Application Note: Embedded Processing XAPP996 (v1.3) October 6, 2008 Dual Processor eference Design Suite Author: Vasanth Asokan Summary This is the Xilinx Dual Processor eference Designs suite. The designs

More information

Impulse Embedded Processing Video Lab

Impulse Embedded Processing Video Lab C language software Impulse Embedded Processing Video Lab Compile and optimize Generate FPGA hardware Generate hardware interfaces HDL files ISE Design Suite FPGA bitmap Workshop Agenda Step-By-Step Creation

More information

XPS UART Lite (v1.01a)

XPS UART Lite (v1.01a) 0 DS571 April 19, 2010 0 0 Introduction The XPS Universal Asynchronous Receiver Transmitter (UART) Lite Interface connects to the PLB (Processor Local Bus) and provides the controller interface for asynchronous

More information

EDK Concepts, Tools, and Techniques

EDK Concepts, Tools, and Techniques EDK Concepts, Tools, and Techniques A Hands-On Guide to Effective Effective Embedded Embedded System Design System Design [optional] [optional] Xilinx is disclosing this user guide, manual, release note,

More information

The Simple MicroBlaze Microcontroller Concept Author: Christophe Charpentier

The Simple MicroBlaze Microcontroller Concept Author: Christophe Charpentier Application Note: Embedded Processing XAPP1141 (v3.0) November 9, 2010 The Simple MicroBlaze Microcontroller Concept Author: Christophe Charpentier Summary The Simple MicroBlaze Microcontroller (SMM) is

More information

Getting Started with the Embedded PowerPC PowerPC Example A

Getting Started with the Embedded PowerPC PowerPC Example A HUNT ENGINEERING Chestnut Court, Burton Row, Brent Knoll, Somerset, TA9 4BP, UK Tel: (+44) (0)1278 760188, Fax: (+44) (0)1278 760199, Email: sales@hunteng.co.uk http://www.hunteng.co.uk http://www.hunt-dsp.com

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

Getting Started with the MicroBlaze Development Kit - Spartan-3E 1600E Edition. UG258 (v1.3) November 30, 2007

Getting Started with the MicroBlaze Development Kit - Spartan-3E 1600E Edition. UG258 (v1.3) November 30, 2007 Getting Started with the MicroBlaze Development Kit - Spartan-3E 1600E Edition R R Xilinx is disclosing this Document and Intellectual Property (hereinafter the Design ) to you for use in the development

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

System Ace Tutorial 03/11/2008

System Ace Tutorial 03/11/2008 System Ace Tutorial This is a basic System Ace tutorial that demonstrates two methods to produce a System ACE file; the use of the System Ace File Generator (GenACE) and through IMPACT. Also, the steps

More information

AC701 Built-In Self Test Flash Application April 2015

AC701 Built-In Self Test Flash Application April 2015 AC701 Built-In Self Test Flash Application April 2015 XTP194 Revision History Date Version Description 04/30/14 11.0 Recompiled for 2015.1. Removed Ethernet as per CR861391. 11/24/14 10.0 Recompiled for

More information

ML410 VxWorks Workbench BSP and System Image Creation for the BSB Design Using EDK 8.2i SP2. April

ML410 VxWorks Workbench BSP and System Image Creation for the BSB Design Using EDK 8.2i SP2. April ML410 VxWorks Workbench BSP and System Image Creation for the BSB Design Using EDK 8.2i SP2 April 2007 Overview Hardware Setup Software Setup & Requirements Generate VxWorks BSP Create VxWorks Project

More information

Reference System: Debugging PowerPC 440 Processor Systems Author: James Lucero

Reference System: Debugging PowerPC 440 Processor Systems Author: James Lucero Application Note: Debugging PowerPC 440 Systems XAPP1060 (v1.1) September 26, 2008 eference System: Debugging PowerPC 440 Processor Systems Author: James Lucero Abstract This application note outlines

More information

MicroBlaze Tutorial on EDK 10.1 using Sparatan III E Behavioural Simulation of MicroBlaze System

MicroBlaze Tutorial on EDK 10.1 using Sparatan III E Behavioural Simulation of MicroBlaze System MicroBlaze Tutorial on EDK 10.1 using Sparatan III E Behavioural Simulation of MicroBlaze System Ahmed Elhossini January 24, 2010 1 Introduction 1.1 Objectives This tutorial will demonstrate process of

More information

Building an Embedded Processor System on a Xilinx Zync FPGA (Profiling): A Tutorial

Building an Embedded Processor System on a Xilinx Zync FPGA (Profiling): A Tutorial Building an Embedded Processor System on a Xilinx Zync FPGA (Profiling): A Tutorial Embedded Processor Hardware Design October 6 t h 2017. VIVADO TUTORIAL 1 Table of Contents Requirements... 3 Part 1:

More information

Platform Specification Format Reference Manual

Platform Specification Format Reference Manual Platform Specification Format Reference Manual Embedded Development Kit (EDK) 12.1 R Copyright 2010 Xilinx, Inc. All Rights Reserved. XILINX, the Xilinx logo, the Brand Window and other designated brands

More information

AXI Interface Based KC705. Embedded Kit MicroBlaze Processor Subsystem (ISE Design Suite 14.4)

AXI Interface Based KC705. Embedded Kit MicroBlaze Processor Subsystem (ISE Design Suite 14.4) AXI Interface Based KC705 j Embedded Kit MicroBlaze Processor Subsystem (ISE Design Suite 14.4) Software Tutorial Notice of Disclaimer The information disclosed to you hereunder (the Materials ) is provided

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

Software Development Advanced

Software Development Advanced Software Development Advanced This material exempt per Department of Commerce license exception TSU Objectives After completing this module, you will be able to: Examine the IP driver s functionality and

More information

Hardware Design. University of Pannonia Dept. Of Electrical Engineering and Information Systems. MicroBlaze v.8.10 / v.8.20

Hardware Design. University of Pannonia Dept. Of Electrical Engineering and Information Systems. MicroBlaze v.8.10 / v.8.20 University of Pannonia Dept. Of Electrical Engineering and Information Systems Hardware Design MicroBlaze v.8.10 / v.8.20 Instructor: Zsolt Vörösházi, PhD. This material exempt per Department of Commerce

More information

Software Development. This material exempt per Department of Commerce license exception TSU Xilinx, Inc. All Rights Reserved

Software Development. This material exempt per Department of Commerce license exception TSU Xilinx, Inc. All Rights Reserved Software Development This material exempt per Department of Commerce license exception TSU 2007 Xilinx, Inc. All Rights Reserved Objectives After completing this module, you will be able to: Identify the

More information

Reference System: PLB DDR2 with OPB Central DMA Author: James Lucero

Reference System: PLB DDR2 with OPB Central DMA Author: James Lucero Application Note: Embedded Processing XAPP935 (v1.1) June 7, 2007 R Reference System: PLB DDR2 with OPB Central DMA Author: James Lucero Abstract This reference system demonstrates the functionality of

More information

Using Serial Flash on the Xilinx Spartan-3E Starter Board. Overview. Objectives. Version 8.1 February 23, 2006 Bryan H. Fletcher

Using Serial Flash on the Xilinx Spartan-3E Starter Board. Overview. Objectives. Version 8.1 February 23, 2006 Bryan H. Fletcher Using Serial Flash on the Xilinx Spartan-3E Starter Board Version 8.1 February 23, 2006 Bryan H. Fletcher Overview The Xilinx Spartan-3E FPGA features the ability to configure from standard serial flash

More information

Reference Design: LogiCORE OPB USB 2.0 Device Author: Geraldine Andrews, Vidhumouli Hunsigida

Reference Design: LogiCORE OPB USB 2.0 Device Author: Geraldine Andrews, Vidhumouli Hunsigida XAPP997 (v1.1) June 14, 2010 Application Note: Embedded Processing eference Design: LogiCOE OPB USB 2.0 Device Author: Geraldine Andrews, Vidhumouli Hunsigida Summary The application note demonstrates

More information

Spartan -6 LX9 MicroBoard Web Connectivity On Ramp Tutorial

Spartan -6 LX9 MicroBoard Web Connectivity On Ramp Tutorial Spartan -6 LX9 MicroBoard Web Connectivity On Ramp Tutorial Version 13.2.01 Revision History Version Description Date 13.2.01 Initial release with support for ISE 13.2 tools Aug. 10, 2011 Page 2 of 30

More information

ML410 VxWorks BSP and System Image Creation for the BSB Design Using EDK 8.2i SP1. April

ML410 VxWorks BSP and System Image Creation for the BSB Design Using EDK 8.2i SP1. April ML410 VxWorks BSP and System Image Creation for the BSB Design Using EDK 8.2i SP1 April 2007 Overview Hardware Setup Software Setup & Requirements Generate VxWorks BSP Create VxWorks Project Create VxWorks

More information

Lab 3: Xilinx PicoBlaze Flow Lab Targeting Spartan-3E Starter Kit

Lab 3: Xilinx PicoBlaze Flow Lab Targeting Spartan-3E Starter Kit Lab 3: Xilinx PicoBlaze Flow Lab Targeting Spartan-3E Starter Kit Xilinx PicoBlaze Flow Demo Lab www.xilinx.com 1-1 Create a New Project Step 1 Create a new project targeting the Spartan-3E device that

More information

Fremont (MAXREFDES6#) Nexys 3 Quick Start Guide

Fremont (MAXREFDES6#) Nexys 3 Quick Start Guide Fremont (MAXREFDES6#) Nexys 3 Quick Start Guide Rev 0; 9/13 Maxim Integrated cannot assume responsibility for use of any circuitry other than circuitry entirely embodied in a Maxim Integrated product.

More information

Campbell (MAXREFDES4#) Nexys 3 Quick Start Guide

Campbell (MAXREFDES4#) Nexys 3 Quick Start Guide Campbell (MAXREFDES4#) Nexys 3 Quick Start Guide Rev 0; 1/13 Maxim Integrated cannot assume responsibility for use of any circuitry other than circuitry entirely embodied in a Maxim Integrated product.

More information

LogiCORE IP I/O Module v1.01a

LogiCORE IP I/O Module v1.01a LogiCORE IP I/O Module v1.01a Product Guide Table of Contents SECTION I: SUMMARY IP Facts Chapter 1: Overview Feature Summary.................................................................. 7 Licensing

More information

Hardware In The Loop (HIL) Simulation for the Zynq-7000 All Programmable SoC Author: Umang Parekh

Hardware In The Loop (HIL) Simulation for the Zynq-7000 All Programmable SoC Author: Umang Parekh Application Note: Zynq-7000 AP SoC XAPP744 (v1.0.2) November 2, 2012 Hardware In The Loop (HIL) Simulation for the Zynq-7000 All Programmable SoC Author: Umang Parekh Summary The Zynq -7000 All Programmable

More information

EDK Concepts, Tools, and Techniques

EDK Concepts, Tools, and Techniques EDK Concepts, Tools, and Techniques A Hands-On Guide to Effective Embedded System Design Notice of Disclaimer The information disclosed to you hereunder (the Materials ) is provided solely for the selection

More information

EDK Concepts, Tools, and Techniques

EDK Concepts, Tools, and Techniques EDK Concepts, Tools, and Techniques A Hands-On Guide to Effective Embedded System Design Notice of Disclaimer The information disclosed to you hereunder (the Materials ) is provided solely for the selection

More information

Campbell (MAXREFDES4#) Nexys 3 Quick Start Guide

Campbell (MAXREFDES4#) Nexys 3 Quick Start Guide Campbell (MAXREFDES4#) Nexys 3 Quick Start Guide Pmod Connector Alignment Required Equipment Windows PC with Xilinx ISE /SDK version 13.4 or later and two USB ports License for Xilinx EDK/SDK version 13.4

More information

Adding the ILA Core to an Existing Design Lab

Adding the ILA Core to an Existing Design Lab Adding the ILA Core to an Existing Introduction This lab consists of adding a ChipScope Pro software ILA core with the Core Inserter tool and debugging a nonfunctioning design. The files for this lab are

More information

POWERLINK Slave Xilinx Getting Started User's Manual

POWERLINK Slave Xilinx Getting Started User's Manual POWERLINK Slave Xilinx Getting Started Version 0.01 (April 2012) Model No: PLALTGETST-ENG We reserve the right to change the content of this manual without prior notice. The information contained herein

More information

Using Xilinx Embedded Processor Subsystems in a Synplify Design Flow

Using Xilinx Embedded Processor Subsystems in a Synplify Design Flow Using Xilinx Embedded Processor Subsystems in a Synplify Design Flow Introduction - Andy Norton, CommLogic Design, Inc The availability of embedded processor subsystems in FPGAs opens the door to a myriad

More information

Figure 1. Simplicity Studio

Figure 1. Simplicity Studio SIMPLICITY STUDIO USER S GUIDE 1. Introduction Simplicity Studio greatly reduces development time and complexity with Silicon Labs EFM32 and 8051 MCU products by providing a high-powered IDE, tools for

More information

Hardware Design. MicroBlaze 7.1. This material exempt per Department of Commerce license exception TSU Xilinx, Inc. All Rights Reserved

Hardware Design. MicroBlaze 7.1. This material exempt per Department of Commerce license exception TSU Xilinx, Inc. All Rights Reserved Hardware Design MicroBlaze 7.1 This material exempt per Department of Commerce license exception TSU Objectives After completing this module, you will be able to: List the MicroBlaze 7.1 Features List

More information

Creating a Processor System Lab

Creating a Processor System Lab Lab Workbook Introduction This lab introduces a design flow to generate a IP-XACT adapter from a design using Vivado HLS and using the generated IP-XACT adapter in a processor system using IP Integrator

More information

ML410 VxWorks BSP and System Image Creation for the BSB DDR2 Design Using EDK 8.2i SP1. April

ML410 VxWorks BSP and System Image Creation for the BSB DDR2 Design Using EDK 8.2i SP1. April ML410 VxWorks BSP and System Image Creation for the BSB DDR2 Design Using EDK 8.2i SP1 April 2007 Overview Hardware Setup Software Setup & Requirements Generate VxWorks BSP Create VxWorks Project Create

More information

KC705 Si5324 Design October 2012

KC705 Si5324 Design October 2012 KC705 Si5324 Design October 2012 XTP188 Revision History Date Version Description 10/23/12 4.0 Recompiled for 14.3. 07/25/12 3.0 Recompiled for 14.2. Added AR50886. 05/08/12 2.0 Recompiled for 14.1. 02/14/12

More information

Vivado Design Suite User Guide. Designing IP Subsystems Using IP Integrator

Vivado Design Suite User Guide. Designing IP Subsystems Using IP Integrator Vivado Design Suite User Guide Designing IP Subsystems Using IP Integrator Notice of Disclaimer The information disclosed to you hereunder (the "Materials") is provided solely for the selection and use

More information

Interested users may wish to obtain additional components to evaluate the following modules:

Interested users may wish to obtain additional components to evaluate the following modules: Analog Essentials Getting Started Guide Overview Maxim Analog Essentials are a series of plug-in peripheral modules that allow engineers to quickly test, evaluate, and integrate Maxim components into their

More information

DEVELOPING A SIMPLE CUSTOM PCORE THAT READS AND

DEVELOPING A SIMPLE CUSTOM PCORE THAT READS AND DEVELOPING A SIMPLE CUSTOM PCORE THAT READS AND WRITES TO DDR AND USE ITS SLAVE REGISTERS TO COMMUNICATE WITH MICROBLAZE YUKA KYUSHIMA SOLANO University of Toronto April 10, 2014 This document has a practical

More information

Figure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick

Figure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick TOOLSTICK C8051F560 DAUGHTER CARD USER S GUIDE 1. Handling Recommendations To enable development, the ToolStick Base Adapter and daughter cards are distributed without any protective plastics. To prevent

More information

TP : System on Chip (SoC) 1

TP : System on Chip (SoC) 1 TP : System on Chip (SoC) 1 Goals : -Discover the VIVADO environment and SDK tool from Xilinx -Programming of the Software part of a SoC -Control of hardware peripheral using software running on the ARM

More information

Figure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick

Figure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick TOOLSTICK LIN DAUGHTER CARD USER S GUIDE 1. Handling Recommendations To enable development, the ToolStick Base Adapter and daughter cards are distributed without any protective plastics. To prevent damage

More information

EDK Base System Builder (BSB) support for XUPV2P Board. Xilinx University Program

EDK Base System Builder (BSB) support for XUPV2P Board. Xilinx University Program EDK Base System Builder (BSB) support for XUPV2P Board Xilinx University Program What is BSB? The Base System Builder (BSB) wizard is a software tool that help users quickly build a working system targeted

More information

Carmel (MAXREFDES18#) LX9 MicroBoard Quick Start Guide

Carmel (MAXREFDES18#) LX9 MicroBoard Quick Start Guide Carmel (MAXREFDES18#) LX9 MicroBoard Quick Start Guide Rev 0; 8/13 Maxim Integrated cannot assume responsibility for use of any circuitry other than circuitry entirely embodied in a Maxim Integrated product.

More information

Figure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick

Figure 1. Proper Method of Holding the ToolStick. Figure 2. Improper Method of Holding the ToolStick TOOLSTICK UNIVERSITY DAUGHTER CARD USER S GUIDE 1. Handling Recommendations To enable development, the ToolStick Base Adapter and daughter cards are distributed without any protective plastics. To prevent

More information