application note microblaze support ds5203 fpga board

23
RTI FPGA Programming Blockset MicroBlaze Support DS5203 FPGA Board Application Note 1.1 – May 2014

Upload: tranxuyen

Post on 30-Dec-2016

258 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Application Note MicroBlaze Support DS5203 FPGA Board

RTI FPGA Programming Blockset

MicroBlaze Support DS5203 FPGA Board

Application Note

1.1 – May 2014

Page 2: Application Note MicroBlaze Support DS5203 FPGA Board

How to Contact dSPACE

Mail: dSPACE GmbH Rathenaustraße 26 33102 Paderborn Germany

Tel.: ++49 5251 1638-0 Fax: ++49 5251 16198-0 E-mail: [email protected] Web: http://www.dspace.com

How to Contact dSPACE Support

To contact dSPACE if you have problems and questions, fill out the support request form provided on the website at http://www.dspace.com/go/supportrequest.

The request form helps the support team handle your difficulties quickly and efficiently.

In urgent cases contact dSPACE via phone: • General Technical Support: +49 5251 1638-941 • TargetLink Support: +49 5251 1638-700

Software Updates and Patches

dSPACE strongly recommends that you download and install the most recent patches for your current dSPACE installation. Visit http://www.dspace.de/goto?support for software updates and patches.

Important Notice

This document contains proprietary information that is protected by copyright. All rights are reserved. The document may be printed for personal or internal use provided all the proprietary markings are retained on all printed copies. In all other cases, the document must not be copied, photocopied, reproduced, translated, or reduced to any electronic medium or machine-readable form, in whole or in part, without the prior written consent of dSPACE GmbH.

© Copyright 2011 - 2014 by: dSPACE GmbH Rathenaustraße 26 33102 Paderborn Germany

This publication and the contents hereof are subject to change without notice. AutomationDesk, CalDesk, ConfigurationDesk, ControlDesk, SCALEXIO, SYNECT, SystemDesk, TargetLink and VEOS are registered trademarks of dSPACE GmbH in the United States or other countries, or both. Other brand names or product names are trademarks or registered trademarks of their respective companies or organizations

Page 3: Application Note MicroBlaze Support DS5203 FPGA Board

MicroBlaze Support DS5203 FPGA Board - 2014 3

Contents

Contents

About This Document ................................................................ 4 Document Symbols and Conventions ........................................................................................ 4

Overview ...................................................................................... 5 Software Prerequisites ............................................................................................................................. 6

Example of DS1005 PPC Board with DS5203 FPGA Board: RTI FPGA Programming Blockset Using MicroBlaze ..................... 7 Constructing the MicroBlaze Core with Xilinx Platform Studio ................................................ 8 Constructing the Simulink Model for the DS5203 ...................................................................... 12 Constructing the Software Component .......................................................................................... 16

Importing Software Projects ....................................................................................................... 18 Running and Checking the Model .................................................................................................... 19 Replacing and Restoring Software in the Bitstream .................................................................. 21 Measured Delays ..................................................................................................................................... 23

Page 4: Application Note MicroBlaze Support DS5203 FPGA Board

4 MicroBlaze Support DS5203 FPGA Board - 2014

About This Document

Document Symbols and Conventions

The following symbols may be used in this document:

Indicates a general hazard that may cause personal injury of any kind if you do not avoid it by following the instructions given.

Indicates the danger of electric shock which may cause death or serious injury if you do not avoid it by following the instructions given.

Indicates a hazard that may cause material damage if you do not avoid it by following the instructions given.

Indicates important information that should be kept in mind, for example, to avoid malfunctions.

Indicates tips containing useful information to make your work easier.

The following abbreviations and formats are used in this document:

Names enclosed in percent signs refer to environment variables for file and path names.

Angle brackets contain wildcard characters or placeholders for variable file and path names, etc.

Symbols

Naming Conventions

%name%

< >

Page 5: Application Note MicroBlaze Support DS5203 FPGA Board

MicroBlaze Support DS5203 FPGA Board - 2014

Overview

This application note describes how to use a MicroBlaze processor block as part of a Simulink FPGA model with the dSPACE RTI FPGA Programming Blockset.

Page 6: Application Note MicroBlaze Support DS5203 FPGA Board

6 MicroBlaze Support DS5203 FPGA Board - 2014

Software Prerequisites The workflow described in this document requires the following software installations: dSPACE RCP and HIL RLS2013-B including RTI FPGA Programming Blockset 2.6

or later

Xilinx ISE Design Suite 14.6 or later

Xilinx System Generator 14.6 or later

Xilinx Platform Studio and Embedded Development Kit (EDK)

It is recommended to use Windows 7 as operating system.

The following descriptions and instructions are based on RTI FPGA Programming Bockset 2.6 and Xilinx ISE Design Suite 14.6.

Page 7: Application Note MicroBlaze Support DS5203 FPGA Board

MicroBlaze Support DS5203 FPGA Board - 2014

Example of DS1005 PPC Board with DS5203 FPGA Board: RTI FPGA Programming Blockset Using MicroBlaze

This section gives a simple example of using the MicroBlaze processor core within the RTI FPGA Programming Blockset. The example application takes an unsigned 32-bit integer input and feeds it into the MicroBlaze via shared memory. The MicroBlaze adds a constant value of 3 to the input and writes the result back via shared memory. Additionally, the MicroBlaze is set up with an interrupt controller. The interrupt controller is connected to the “data new” port of the incoming data port and triggers an interrupt service function inside the MicroBlaze which adds the number of interrupts modulo 1000 to the input data multiplied with 1000. The model is composed of two parts: The processor-model running on the DS1005 processor board and the FPGA model (containing the MicroBlaze) running on the DS5203.

Page 8: Application Note MicroBlaze Support DS5203 FPGA Board

ConstPlatfo

8

tructinorm St

ng the Mtudio

First a Mperformi Creat

paths

Laun

Proje

Interc

Custo

Local

The basicview.

Select thSometimcorrectly

MicroB

icroBlaze coreng these stepte a new direcs or project na

ch XPS.

ect file: <FPGA

connect type:

om board targ

o DS5PackReseRefe

l memory: 64K

c MicroBlaze i

e Graphical Dmes incorrect cy. In this case s

MicroBlaz

Blaze Co

e using Xilinx Pps. Where not ctory <FPGAMoames.

AModelDir>\

PLB System

get:

5203: Architectkage ff1136, set polarity: Acterence clock a

KB

s now configu

esign View tabclock is displaystart over from

e Support DS5203

ore wit

Platform Studispecified, use odelDir>. Do

XPS\system

ture: Virtex 5, peed grade: -2tive High nd system clo

ured and you s

b and verify thyed in Xilinx XPm the beginnin

3 FPGA Board - 20

th Xilin

io (XPS) has todefault setting

o not use whit

m.xmp

Device: XC5VS2,

ck: 100MHz

should see the

hat the clockinPS even thougng.

014

nx

o be constructgs and click Ntespaces in yo

SX95T,

e system assem

ng was set corgh it was confi

ted by Next. ur

mbly

rectly. igured

Page 9: Application Note MicroBlaze Support DS5203 FPGA Board

For the D

The MicrMicroBlabe remov Selec

Expanclockare bdlmb

Likewise,External The syste

DS5203, it sho

roBlaze in this aze must run inved as follows

ct the Ports tab

nd all ports. Ink_generator_0:by default the pb: LMB_CLK, ilm

, all connectioPort:proc_sys_

em assembly p

MicroBlaz

uld look like t

configurationn sync with ths:

b in the system

n the Connecte:CLKOUT0 by Eports: mb_plb

mb: LMB_CLK

ons to clock_ge_reset_0_Dcm_

port view shou

e Support DS5203

his, with 100M

n is driven by ae Simulink mo

m assembly vie

ed Port columExternal Ports : PLB_CLK, pro

enerator_0:LO_locked_pin.

uld now look l

3 FPGA Board - 20

MHz displayed

a clock generaodel, the clock

ew.

mn, replace all o- fpga_0_clk_1

oc_sys_reset_0

CKED must be

ike this:

014

d:

ator. Since thek generator ne

occurrences o1_sys_clk_pin. : slowest_sync

e configured a

eeds to

of These

c_clk,

as

Page 10: Application Note MicroBlaze Support DS5203 FPGA Board

10

Note tha

fpga_

fpga_const

proc_

Clockbe ve

In the Syand dele Now thethe Micro From

confi

at there are no

_0_clk_1_sys_c

_0_rst_1_sys_rstant of 0 later

_sys_reset_0_D

k generator ouerified in the G

ystem Assembete the instanc

clock generatoBlaze core.

m the XPS IP Caguration.

MicroBlaz

ow three exter

clk_pin: The clo

st_pin: The Mi(no reset).

Dcm_locked_p

utputs CLKOUGraphical Desig

ly View, selectce and all its co

tor has been r

atalog, add XP

e Support DS5203

nal ports:

ock pin which

croBlaze reset

in: This will be

T0 and LOCKEgn View.

t Bus Interfaceonnections.

removed, you

PS Interrupt Co

3 FPGA Board - 20

will be driven

t line. This will

e set to a const

ED are not con

es. Right-click c

can add an int

ontroller with

014

by the FPGA.

be configured

tant of 1 later

nnected. This s

clock_generat

terrupt contro

the default

d to a

.

should

tor_0

oller to

Page 11: Application Note MicroBlaze Support DS5203 FPGA Board

Connect In the

Fromports

Conn

On th

Edit t

Replathe bPORTSENSPORTSENS

In thePORTPORT

In thePORT

Save

The interinterruptIRQs to tIf any of Ports pag

You have“system.xthe softwconstrucrecomme

the interrupt

e System Asse

m the filter views.

nect xps_intc_0

he Ports page,

the system.mh

ace the line bebeginning withT xps_intc_0_InSITIVITY = EDGT xps_intc_1_InSITIVITY = EDG

e section afterT IRQ = microbT Intr = xps_in

e section afterT INTERRUPT =

the file and cl

rrupt controllet trigger lines (the MicroBlazethe interrupt ge, the interru

e completed txmp”, which w

ware componeted, since thisended to mak

MicroBlaz

controller:

embly View, se

w, select Show

0 with mb_plb

, right-click xp

hs file in XPS b

eginning with h: ntr_pin = xps_GE_RISING ntr_pin = xps_GE_RISING

r “BEGIN xps_iblaze_0_Interrtc_0_Intr & xp

r “BEGIN Micro= microblaze_

lick Reload.

ers request line(Intr) are extere. This should lines is set to

upt controller s

he MicroBlazewill be used latent for the Mics will change tke a backup of

e Support DS5203

elect Bus Interf

w ports Interr

.

ps_intc_0 Intr a

by selecting th

“PORT xps_int

intc_0_Intr, DI

intc_1_Intr, DI

ntc”, replace trupt ps_intc_1_Intr

oBlaze”, add_0_Interrupt

e is now connrnal and can balso be verifie1, an IRQ is seshould now lo

e configurationter in the SimucroBlaze, the She system.xmpf the whole XP

3 FPGA Board - 20

faces.

upt Ports to d

and make it ex

e Project tab:

tc_0_Intr_pin “

R = I, SIGIS =

R = I, SIGIS =

he line “Port I

ected to the Mbe used from oed in the Grapent to the Microok like this.

n. The tool genulink model. BSimulink modep file. It is ther

PS directory no

014

display the inte

xternal.

“ in the port lis

INTERRUPT,

INTERRUPT,

Intr” with

MicroBlaze. Twoutside to genphical Design VroBlaze. On th

nerated a file Before developel must be refore ow.

errupt

st at

wo nerate View. he

called ping

Page 12: Application Note MicroBlaze Support DS5203 FPGA Board

Const

12

tructin

ng the SFor the bProgramfollowingwill later General One singmodel isoutside t The folloblock. Boonly for wMicroBlasince no and we a

The diffe FPGA Se Fram

Register Binar

Form

Grou

Convert Outp

Simulinbasics of constming Blockset

g diagram. Thibe added as a

information ogle shared mem

represented bthe EDK block

owing diagramoth of them arwriting to the

aze. The dout poutput is exp

are set to zero

Xilinx doYou have

erent blocks m

tup ework: DS520

In 1, Out 1, Ory point: 0

mat: Unsigned

p ID: 0

put type: Boole

MicroBlaz

nk Modtructing an FPt documentatis is the FPGA an EDK proces

n shared memmory interfaceby two graphi and one is un

m shows only tre potentially aMicroBlaze, a

port of the TOected from th

o, since the Mic

oes not suppore to use the M

must be config

03 with onboa

ut 2

ean

e Support DS5203

del for GA-interface, ion. Constructmodel withou

ssor block.

mory blocks: She between thecal blocks in t

nderneath the

he shared meable to read and the FROM

O shared meme MicroBlaze croBlaze will n

rt SLX as modeMDL format.

ured as follow

rd I/O

3 FPGA Board - 20

the DSrefer to the RT

t a model accout the MicroBla

hared memori MicroBlaze ahe Simulink mmask of the E

mory interfacend write, but tblock only for

ory is connecthere. Likewise

not expect any

el format for t

ws:

014

S5203 TI FPGA ording to the aze. The Micro

ies are dual-pnd the surrou

model. One is EDK block.

es outside thethe TO block ir reading fromted to a termine, the ports ady inputs from t

the MicroBlaze

oBlaze

orted. nding

e EDK s used

m the nator, dr, din them.

e flow.

Page 13: Application Note MicroBlaze Support DS5203 FPGA Board

MicroBlaze Support DS5203 FPGA Board - 2014

Delay Latency: 1

Since data is ready one cycle later, the enable port needs to be delayed.

The output of this block enables the subsequent shared memory TO for writing to the MicroBlaze.

Shared memories TO and FROM: Depth: 16

Ownership: Locally owned and initialized

Access protection: Unprotected

Access mode: Read and write

Write mode: Read before write

Latency: 1

Memory access timeout: 0

Output type: Fixed point

Arithmetic type: Unsigned

Number of bits: 32

Binary point: 0

Constant 1, 2 Constant value: 0. This is the address for the value written to the shared

memory.

Output type: Fixed point

Arithmetic type: unsigned

Number of bits: 4

Binary point: 0

Sample period: 1e-8.

Constant 3 Constant value: 0. This is the address for the value written to the shared

memory.

Output type: Fixed point

Arithmetic type: Unsigned

Number of bits: 32

Binary point: 0

Sample period: 1e-8.

Page 14: Application Note MicroBlaze Support DS5203 FPGA Board

14 MicroBlaze Support DS5203 FPGA Board - 2014

Constant 4 Constant value: 0. This is the address for the value written to the shared

memory.

Output type: Boolean

Sample period: 1e-8.

Now you can add the EDK processor block which represents the MicroBlaze core. Open the Simulink Library Browser.

From the Xilinx Control Logic blockset, add EDK Processor to the model, resize it larger and double-click to open. Select the different tabs and configure as follows. You must click Apply after each modification.

Configure Processor for: HDL Netlisting

Select the system.xmp file created by XPS in the previous step.

Memory Map: Add all. This adds the previously defined shared memories to the MicroBlaze (visible when “look under mask” is done).

Expose the following ports: fpga_0_rst_1_sys_rst_pin, xps_intc_0_Intr_pin, xps_intc_1_Intr_pin

Disable Dual Clocks.

Disable Co-Debug and leave the Initial Program empty for the moment.

On the Basic page, click Sync and then click OK.

Create Constant 5, 6, 7 Constant values 0, 1 and 0 for 5, 6 and 7

Output type: Fixed point

Arithmetic type: Unsigned

Number of bits: 1

Binary point: 0

Sample period: 1e-8.

Connect constant 5 to fpga_0_rst_1_sys_rst_pin no reset

Connect constant 5 to fpga_0_rst_1_sys_rst_pin no reset

Connect constant 6 to proc_sys_reset_0_Dcm_locked_pin

Connect constant 7 to xps_intc_0_Intr_pin (0 = no interrupt)

Connect Register In 1, Data New to xps_intc_1_Intr_pin (interrupt request whenever there is new data)

The FPGA model is now complete and should look like this.

Page 15: Application Note MicroBlaze Support DS5203 FPGA Board

Place theSelect EdRight-clic Now youBlockset accordininputs su(the unmscopes.

Open theThe first componesoftwareTo createexported

e FPGA model dit – All. ck and select C

u can create thGuide on the g to the follow

uch that constmodified input

e FPGA subsysbuild process ent. The build developmente the softwared by the FPGA

MicroBlaz

in a subsyste

Create Subsys

he processor inbasics of conswing diagram.ant 12 is fed iand the value

stem and exec will fail, since will generatet process desce component,

build).

e Support DS5203

m as follows:

stem.

nterface. Refestructing an FP. It connects pnto the FPGA,e changed by t

cute the FPGA it was not yeta file named “

cribed below.you require <

3 FPGA Board - 20

r to the RTI FPPGA-interface.rocessor outpand the two o

the MicroBlaze

build via the t possible to s“system.xml” n

FPGAModelDi

014

PGA Programm. Construct a m

puts with FPGAoutputs of thee) are shown o

FPGA Setup bspecify a softwneeded by the

ir>/sysgen (ju

ming model A e FPGA on

block. ware e

st

Page 16: Application Note MicroBlaze Support DS5203 FPGA Board

16 MicroBlaze Support DS5203 FPGA Board - 2014

Constructing the Software Component This section explains how to implement a software component for the system described above using the Xilinx Software Development Kit (SDK). The program will contain one interrupt service routine, adding the number of calls of the interrupt service function modulo 1000 to the FPGA input multiplied by 1000. The last three decimal digits of the output run in a loop to show that the interrupts function. The other digits represent the original input, demonstrating how data is fed to the MicroBlaze. The program will also contain a main program which receives the FPGA input via shared memory and sends the result back to the FPGA. Create a new directory <FPGAModelDir>/SDK. Start Xilinx. Create a new hardware platform specification: Menu File: new: other: Xilinx, Hardware Platform Specification

Select a project name, e.g., “MB”.

Target hardware specification: <FPGAModelDir>/sysgen/SDK_Export/hw/system.xml

Now the SDK must be informed about the location of the software drivers provided by the XPS export. Menu Xilinx Tools: Repositories: New

Set directory to <FPGAModelDir>\sysgen\SDK_Export\sysgen_repos

After the hardware platform specification has been generated , you can create a board support package together with an example application. The board support package contains some simple access functions for the shared memories and for the interrupt controller. Switch the “project build” configuration to release mode. Menu Project: properties: C/C++ Build: Manage Configurations: Release: set active. Create the example application as follows: Menu File: New, Application Project

Choose a project name, e.g. “MB_app”.

Click Next.

Application template: Peripheral Tests

The example application has been created. To run it, you must replace the source code. In the project explorer, double-click the testperiph.c file in the folder MB_app/src. Replace the code by the following program.

Page 17: Application Note MicroBlaze Support DS5203 FPGA Board

MicroBlaze Support DS5203 FPGA Board - 2014

#include <stdio.h>

#include "xparameters.h"

#include "sg_plbiface.h"

#include "xintc_l.h"

volatile u32 * to_pt = (u32 *) XPAR_SG_PLBIFACE_0_MEMMAP_TO;;

volatile u32 * from_pt = (u32 *) XPAR_SG_PLBIFACE_0_MEMMAP_FROM;

u32 counter = 0;

u32 int_counter = 0;

void fpga_int_handler(void * baseaddr_p)

{

int_counter = (int_counter + 1) % 1000 ;

}

int main()

{

xc_iface_t *iface;

// initialize the software driver, assuming the

// Pcore device ID is 0

XC_CfgInitialize(&iface, &SG_PLBIFACE_ConfigTable[0]);

// MicroBlaze & XIntC Interrupt Controller

microblaze_enable_interrupts();

// Register fpga interrupt routine in the vector table

// of XIntC

XIntc_RegisterHandler(XPAR_XPS_INTC_0_BASEADDR,

XPAR_XPS_INTC_0_SYSTEM_XPS_INTC_0_INTR_PIN_0_INTR,

(XInterruptHandler) fpga_int_handler,

(void *)0);

// Start the interrupt controller XIntC

XIntc_MasterEnable(XPAR_XPS_INTC_0_BASEADDR);

XIntc_EnableIntr (XPAR_XPS_INTC_0_BASEADDR,

XPAR_SYSTEM_XPS_INTC_0_INTR_PIN_0_MASK);

while (1)

{

counter = *to_pt * 1000 + int_counter;

*from_pt = counter;

}

return 0;

}

Page 18: Application Note MicroBlaze Support DS5203 FPGA Board

18 MicroBlaze Support DS5203 FPGA Board - 2014

Save the file. The compilation is executed automatically. The application has been compiled to <FPGAModelDir>\SDK\MB_app\Release\MB_app.elf and is ready to use. Open the EDK block in the FPGA Simulink model.

Select the software tab and browse to the ELF file.

Execute the FPGA build via the FPGA Setup block.

Importing Software Projects

If you want to import SDK software projects into your current workspace, select File – Import – General – Existing Projects into Workspace.

Then select the root directory of the project to be imported.

Page 19: Application Note MicroBlaze Support DS5203 FPGA Board

MicroBlaze Support DS5203 FPGA Board - 2014

Running and Checking the Model After the FPGA component was synthesized successfully, the processor component has to be built. Open the processor component of the Simulink model.

Open the processor setup block. On the Model Configuration page, select Processor Build and click Switch Model Mode.

If directory <FPGAModelDir>\*_rti1005 exists, delete it.

Press Ctrl-B to build the model.

The <FPGAModelDir>\*.sdf and *.ppc files are generated.

Now the result can be tested. Open dSPACE ControlDesk and register your DS1005 / DS5203 system.

Drag the SDF file to the DS1005 icon. This loads the file to the DS1005 and programs the FPGA on the DS5203.

Create a simple layout in ControlDesk with two numerical displays and one numerical input.

Connect the numerical input to Model Root/constant/value.

Connect the numerical displays to Model Root/microblazed/In1 and Model Root/unmodified/In1.

Start the animation.

The display should look like this.

Page 20: Application Note MicroBlaze Support DS5203 FPGA Board

20 MicroBlaze Support DS5203 FPGA Board - 2014

In this figure, 12 is the input into the system. It is shown in the numerical input field and in the numerical display for “unmodified”. The numerical display containing 1015 shows the result computed by the MicroBlaze. 1000 is added by the interrupt service function and 3 by the main function. You can now modify the value in the numerical input field and observe the behavior.

Page 21: Application Note MicroBlaze Support DS5203 FPGA Board

MicroBlaze Support DS5203 FPGA Board - 2014

Replacing and Restoring Software in the Bitstream If the software component was changed, there is no need to perform the whole FPGA synthesis process again. The FPGA bitstream can be updated with the new ELF file. The original bitstream is backed up and can be restored if desired. Updating the bitstream with a new ELF file First a modified software component has to be created. In Xilinx SDK, in the software component’s file testperiph.c, modify the

interrupt service function. Replace counter = *to_pt * 1000 + int_counter; by counter = (*to_pt + 2) * 1000 + int_counter;

Save the file. This automatically compiles and updates the ELF file.

Now the FPGA bitstream can be updated. It is contained in an INI file. After each complete FPGA build, a new INI file is created at this location. The files are named subsystem_<some hex number>.ini. To provide unique file names, the hexadecimal number is different for each FPGA build. Identify the file name of your current build by looking in the INI file directory, e.g. subsystem_4A284D2DC61ADB.ini. The INI files are located in <FPGAModelDir>/<ModelName>_rtiFPGA/ini. Go to the MATLAB prompt.

Enter rtifpga_scriptinterface('ReplaceElfFile', '<ini path>\ Subsystem_4A284D2DC61ADB.ini', '<elf path>\MB_app.elf'), where <ini path> and <elf path> are replaced by the specific current locations.

Delete <FPGAModelDir>\*_rti1005 or disable the incremental build in MATLAB via menu File: Preferences: Simulink: Launch Simulink Preferences: Configuration Defaults: Simulation Target Build Mode: Clean all

Rebuild the processor component of the model.

Reload the model using ControlDesk. The changed behavior can be observed.

Restoring the original bitstream When a complete FPGA build is done (not only an update of the bitstream as described above), the bitstream containing the software component is backed up in the INI file. It can easily be restored: Go to the MATLAB prompt.

Page 22: Application Note MicroBlaze Support DS5203 FPGA Board

22 MicroBlaze Support DS5203 FPGA Board - 2014

Enter rtifpga_scriptinterface('ReplaceElfFile', '<ini path>\ Subsystem_4A284D2DC61ADB.ini', '') where <ini path> is replaced by the specific current location. It is nearly the same except that you provide an empty ELF-file name.

Delete <FPGAModelDir>\*_rti1005 or disable the incremental build in MATLAB via menu File: Preferences: Simulink: Launch Simulink Preferences: Configuration Defaults: Simulation Target Build Mode: Clean all

Rebuild the processor component of the model.

Reload the model using ControlDesk. The original behavior can be observed.

Page 23: Application Note MicroBlaze Support DS5203 FPGA Board

MicroBlaze Support DS5203 FPGA Board - 2014

Measured Delays From the software point of view, some delays where measured using a real-world model on the DS5203. For other performance figures, refer to the Xilinx MicroBlaze Guide.

Operation Delay Data from model to MicroBlaze via shared memory 60 ns Data from model to MicroBlaze via shared memory 80 ns Interrupt from model to Microblaze 1300 ns