Lab6 HW/SW System Debug Lab : MicroBlaze

Slides:



Advertisements
Similar presentations
DNR-322L & DNR-326.
Advertisements

© 2003 Xilinx, Inc. All Rights Reserved Debugging.
NetAcumen ActiveX Download Instructions
The Xilinx EDK Toolset: Xilinx Platform Studio (XPS) Building a base system platform.
1 Fast Communication for Multi – Core SOPC Technion – Israel Institute of Technology Department of Electrical Engineering High Speed Digital Systems Lab.
ECE Department: University of Massachusetts, Amherst Lab 1: Introduction to NIOS II Hardware Development.
Lab4 Writing Basic Software Applications Lab: MicroBlaze.
Lab5 Advanced Software Writing Lab : MicroBlaze. for EDK 6.3i1 Objectives Utilize the OPB timer. Assign an interrupt handler to the OBP timer. Develop.
This material exempt per Department of Commerce license exception TSU Debugging.
MZ790 Print Driver and RINC Software Install and Setup These instructions are to assist you in installation and setup of the MZ790 Print Driver and RINC.
1. 2 LXU800 User’s Manual 1.Installation – Windows XP UI Features Introduction Data Connection & Disconnection.
This example is a step by step walkthrough for installing the SRH Front Desk Printer in Windows 8.
Silicon Labs ToolStick Development Platform
Renesas Technology America Inc. 1 M16C/Tiny SKP Tutorial 2 Creating A New Project Using HEW4.
Packet Tracer: Novice Session
Packet Tracer 4.1: Novice Session
Thrive Installation.
© 2005 Xilinx, Inc. All Rights Reserved This material exempt per Department of Commerce license exception TSU Software Development and Debugging Using.
MagicInfo Pro Server Software All control, content, and scheduling is performed within the MagicInfo Pro Server software previously installed. Before.
CCS APPS CODE COVERAGE. CCS APPS Code Coverage Definition: –The amount of code within a program that is exercised Uses: –Important for discovering code.
High Speed Data Converter University
Special Project Group 03 Chintan Shah Nisharg Patel Cynthia York.
Renesas Technology America Inc. 1 SKP8CMINI Tutorial 2 Creating A New Project Using HEW.
Active-HDL Interfaces Debugging C Code Course 10.
Active-HDL Interfaces Building VHPI Applications C Compilation Course 9.
LAB1 Summary Zhaofeng SJTU.SOME. Embedded Software Tools CPU Logic Design Tools I/O FPGA Memory Logic Design Tools FPGA + Memory + IP + High Speed IO.
Development of a microprocessor project with LPC2388 development board.
Programmable Logic Training Course HDL Editor
Renesas Technology America Inc. 1 M16C Seminars Lab 3 Creating Projects Using HEW4 14 March 2005 M16C Seminars Lab 3 Creating Projects Using HEW4 Last.
Renesas Technology America Inc. 1 SKP8CMINI Tutorial 2 Creating A New Project Using HEW.
PART 2 INTRODUCTION TO DYNAMIC WEB CONTENT AND PHP.
Creating and Editing a Web Page
Teaching Digital Logic courses with Altera Technology
© 2008, Renesas Technology America, Inc., All Rights Reserved 1 Introduction Purpose  This training course describes Coverage, a utility that is used.
Active-HDL Server Farm Course 11. All materials updated on: September 30, 2004 Outline 1.Introduction 2.Advantages 3.Requirements 4.Installation 5.Architecture.
XP New Perspectives on Creating Web Pages With Word Tutorial 1 1 Creating Web Pages With Word Tutorial 1.
Copyright © 2007 by Pearson Education 1 UNIT 6A COMBINATIONAL CIRCUIT DESIGN WITH VHDL by Gregory L. Moss Click hyperlink below to select: Tutorial for.
Programming and Debugging with the Dragon and JTAG Many thanks to Dr. James Hawthorne for evaluating the Dragon system and providing the core content for.
Fundamentals of Windows Mouse n 4 Basic Operations: –Pointing –Clicking –Double Clicking –Dragging.
After Construction Name: Per #:.
Maj Jeffrey Falkinburg Room 2E46E
Workshop Setup The software/hardware used in this workshop are:
Programming and Debugging with the Dragon and JTAG
Lab 1: Using NIOS II processor for code execution on FPGA
The first change to your project files that is needed is to change the device to the correct FPGA. This is done by going to the Assignments tab on the.
Using Xilinx ChipScope Pro Tools
3.14 Microscan QX-870 Scanner Configuration
WORKSHOP 1 STAMPING MECHANISM
PRU-ICSS Programming with CCS
FlowArm PLTW Programming
T_C_N_L_G_ E D I D I E O Y O H I E B J I R E A A W.
ALEPH Version 22 Beginning Cataloging
Telnet/SSH Connecting to Hosts Internet Technology.
ADC32RF45 with KCU105 Internal Clock GHz.
Creating and Modifying Queries
NORMA Lab. 7 Generating Reports More Display Options
Lab2 Adding IP to a Hardware Design Lab: MicroBlaze
CIS16 Application Development Programming with Visual Basic
ADC32RF45 Testing.
Lab3 Adding Custom IP Lab: MicroBlaze
Founded in Silicon Valley in 1984
Examplify The following slides are the ExamSoft’s recommended best practices to help you take your exam. We want you to be prepared for your exam on exam.
Lab4 Writing Basic Software Applications Lab: MicroBlaze
Software Setup & Validation
Using Eclipse.
General Workflow Simulation Unit SW TIA Portal PROFINET
RapidFinder Analysis Software How-To Guide
Windows Operating System
NatQuery An End-User Perspective On Using To Extract Data From ADABAS
Presentation transcript:

Lab6 HW/SW System Debug Lab : MicroBlaze

Objectives Add ChipScope Analyzers into a system. System Debugging. for EDK 6.3i

Procedure This lab comprises several steps involving simulation. Below each general instruction for a given procedure, you will find accompanying step-by-step directions and illustrated figures providing more detail for performing the general instruction. If you feel confident about a specific instruction, feel free to skip the step-by-step directions and move on to the next general instruction in the procedure. for EDK 6.3i

Opening the Project Create a lab6 folder in the X:\EDKLab\ directory. If you wish to continue with your completed design from lab5 then copy the contents of the lab5 folder into the lab6 folder. 1. 2. 3. 4. for EDK 6.3i

Opening the Project Open XPS, click File → Open Project and browse to the project which is in the directory: X:\EDKLab\lab6, then click system.xmp to open the project. 1. 2. for EDK 6.3i

Compiler Optimization Using Project  Software Platform Settings … open the Software Platform Settings GUI. for EDK 6.3i

Compiler Optimization Click on the Processor, Driver Parameters and Interrupt Handlers tab. Delete the timer_int_handler in the Current Value field so the field is blank. Click 確定. 1. 2. 3. for EDK 6.3i

Compiler Optimization Copy the system_delay.c file to the current project X:\EDKLab\Lab6\code. Remove system_timer.c from the MyProj project and add the new file system_delay.c. 1. 4. 5. 2. 3. 6. for EDK 6.3i

Compiler Optimization 1. Set the compiler optimization level to No Optimization by double clicking on the MyProj title and selecting the Optimization Tab as shown in following figure, and select the option to Create symbols for debugging as shown. Click 確定. 2. 3. 4. for EDK 6.3i 5.

Compiler Optimization Select Download so the sources are recompiled and loaded to the board. The 7segments should display the counter running at 0.1 seconds. for EDK 6.3i

Compiler Optimization Set the compiler optimization level to Level 2 and download the project again. Notice the difference in speed of display increment due to compiler optimizations. 1. 2. for EDK 6.3i

ChipScope Core Instantiation ChipScope Core Connections OPB/IBA Core CS_ICON_Control SYS_RST Mb_halt (MicroBlaze) Dbg_stop (MicroBlaze) iba_trig_in iba_trig_out Sys_clk_s OPB_CLK ICON Core Control for EDK 6.3i

ChipScope Core Instantiation Click Project  Add Cores (dialog). In the Peripherals tab, add the chipscope_icon and chipscope_opb_iba peripherals. 2. 3. 1. 4. for EDK 6.3i

ChipScope Core Instantiation 1. In the Bus connection tab, connect the chipscope_opb_iba as a BA (bus analyzer) device to the OPB bus. for EDK 6.3i 2.

ChipScope Core Instantiation In the Ports tab, connect the chipscope_cores as shown in following Figure. for EDK 6.3i

ChipScope Core Instantiation In the Parameters tab, configure the chipscope_cores. Select C_SYSTEM_CONTAINS_MDM and << ADD parameter to the list. Set this value to 1 - This parameter indicates whether the system containing the ChipScope Icon core contains the OPB MDM peripheral or not. The opb_mdm debug module is used for communication between MicroBlaze and the Xilinx.Microprocessor Debugger (XMD) interface. 1. 2. 5. 3. 4. for EDK 6.3i

ChipScope Core Instantiation Choose the chipscope_opb_iba_0 IP instance from the right hand side drop-down box, [CTRL-select] to add the following parameters and set their value from the list: C_NUM_DATA_SAMPLES = 512 (default) C_ENABLE_TRIGGER_OUT = 1 C_CONTROL_UNITS = 1 C_ADDR_UNITS = 1 C_DATA_UNITS = 1 C_GENERIC_TRIGGER_UNITS = 1 C_TRIGGER_UNIT_MATCH_TYPE = basic with edges C_GENERIC_TRIGGER_IN_WIDTH = 1 Click 確定. for EDK 6.3i

ChipScope Core Instantiation Some control signals to the MicroBlaze processor are required to enable control and triggering between the ChipScope Analyzer and the GDB Debugger. In the system.mhs file add the following two ports under the Microblaze core parameter listing: PORT MB_Halted = mb_halted PORT DBG_STOP = dbg_stop Save and Close the file. 1. 2. for EDK 6.3i

ChipScope Core Instantiation Select Download to generate the new HW system and link in the SW. Operation should still be the same. for EDK 6.3i

GDB and ChipScope Operation In XPS select Tools  XMD or using the XMD icon , launch the Xilinx Microprocessor Debugger (XMD) tool. If a message appears, click 確定 to open the XMD Debug Options box. Verify that Hardware is selected as the Connection Type and click Save to accept the default settings. 1. 2. 3. for EDK 6.3i

GDB and ChipScope Operation After saving, you may have to reopen XMD. If so, select Tools  XMD or using the XMD icon , launch the Xilinx Microprocessor Debugger (XMD) tool. In the XMD dos-type window that opens type mbconnect mdm at the prompt in order to connect between the processor and host computer using the JTAG port. Note: In the last line presented in XMD Starting GDB server for “mdm” target (id = 0) at TCP port no 1234, note the port value it may be necessary shortly. for EDK 6.3i

GDB and ChipScope Operation Return to XPS and select Tools  Software Debugger or using the GNU debugger icon launch the GNU debugger tool. Select the MyProj application in the popup window as shown in following figure. Click OK. Select Run  Connect to target or simply click on the running man . 1. 2. 3. for EDK 6.3i

GDB and ChipScope Operation A Target Selection dialogue box will appear. Select Target : Remote/TCP : XMD Hostname : localhost Port : 1234 (or the port value noted above) And click OK. The software code will be downloaded to the evaluation board. Code operation will be halted at the first line following the main( ) routine. Proper connection between GDB and the evaluation board can be verified by noting that the colored highlight is green not purple. If you see purple close the XMD and all GDB windows and return to “Starting the Gnu debugger.” 1. 2. for EDK 6.3i

GDB and ChipScope Operation Select Control  Continue or simply click on the continue icon . Note the 7segments flashing indicating proper system operation. for EDK 6.3i

GDB and ChipScope Operation Launch the ChipScope Pro Analyzer tool from the 開始  程式集  ChipScope Pro 6.3i  ChipScope Pro Analyzer. for EDK 6.3i

GDB and ChipScope Operation Click on the Open Cable/Search JTAG chain icon . This will identify the devices on the JTAG chain. Select OK. for EDK 6.3i

GDB and ChipScope Operation The ChipScope Pro Analyzer will open along with default Trigger Setup and Waveform signal windows. for EDK 6.3i

GDB and ChipScope Operation Select File  Import. In the Signal Import dialogue click on the Select New File button. 2. 1. for EDK 6.3i

GDB and ChipScope Operation Browse to the XPS design directory and the select the following file X:\EDKLab\Lab6\implementation\chipscope_opb_iba_0_wrapper\ chipscope_opb_iba_0.cdc and click 開啟 as shown in following figure. The signals associated with the OPB core should be listed in the Trigger Setup and Waveform signal windows. 1. 2. for EDK 6.3i 3.

HW/SW Debug Interaction Set M0:TRG0:OPB_CTRL OPB_xferAck bit == 1. Change the Radix of M1:M3 from binary (Bin) to Hexadecimal (Hex) by clicking on the respective boxes and selecting Hex. Set M1:TRIG1:OPB_ABUS == 8000_1A00 by selecting and adjusting the value box. for EDK 6.3i

HW/SW Debug Interaction Adjust the Trigger Condition Equation by selecting the box in the TriggerCondition0 dialogue box that appears. Select M0 and Select M1. The Trigger Condition Equation should now display M0 && M1. Click OK. 1. 2. 3. for EDK 6.3i 4.

HW/SW Debug Interaction Set the trigger window depth to 512 and position to 256. Consolidate OPB_Abus signals by [Shift-Select]-ing OPB_Abus[31] : OPB_Abus[0]. Right click Add to Bus  New Bus. Change new bus name from BUS_0 to OPB_Abus[31:0] by right clicking on BUS_0  Rename. 1. 2. 3. 4. 7. 5. for EDK 6.3i 6.

HW/SW Debug Interaction Repeat process for OPB_Dbus[31..0]. Set up the Output Enable of the Trigger to Pulse (High). This will cross trigger the GDB debugger. Setup the trigger by selecting Trigger Setup -> Run as shown below. 1. 2. 3. for EDK 6.3i

HW/SW Debug Interaction The hardware should trigger and then this will cross trigger the SW asynchronous stop in GDB. Basic ChipScope Pro Trigger settings along with simple waveforms are established. for EDK 6.3i

Conclusion Chipscope HW debug modules can be added as IP modules in EDK, and the ChipScope analyzer can be used in conjunction with GDB, the GNU debugger in EDK, to provide a debug environment that allows cross triggering and debug between hardware and software using a shared JTAG connection. for EDK 6.3i