groupUrl: https://ez.analog.com/dsp/software-and-development-tools/visualdsp/
Analog.com Analog Dialogue Wiki English
Analog.com Analog Dialogue Wiki 简体中文
EngineerZone
EngineerZone
  • Site
  • User
  • Site
  • Search
  • User
EngineerZone
EngineerZone
  • Log in
  • Site
  • Search
  • Log in
  • Home
  • Blogs ⌵
    • EZ Spotlight
    • The Engineering Mind
  • Browse ⌵
    • All Groups
    • All Members
  • Support ⌵
    • 3D ToF Depth Sensing
    • A2B
    • Aerospace and Defense (ADEF)
    • Amplifiers
    • Analog Microcontrollers
    • Analysis Control Evaluation (ACE) Software
    • Audio
    • Clock and Timing
    • Condition-Based Monitoring
    • Data Converters
    • Design Tools and Calculators
    • Direct Digital Synthesis (DDS)
    • Embedded Vision Sensing
    • Energy Monitoring and Metering
    • FPGA Reference Designs
    • Industrial Ethernet
    • Interface and Isolation
    • Low Power RF Transceivers
    • MEMS Inertial Sensors
    • Motor Control Hardware Platforms
    • Optical Sensing
    • Power Management
    • Precision Technology Signal Chains
    • Processors and DSP
    • Reference Circuits
    • RF and Microwave
    • Signal Chain Power (SCP)
    • Switches/Multiplexers
    • Temperature Sensors
    • Video
    • Wide Band RF Transceivers
    • Wireless Sensor Networks Reference Library
  • About EZ
  • More
  • Cancel
  • 主页
  • 浏览 ⌵
    • 收件箱
    • 个人设置
    • 会员
    • 专区列表
  • 论坛专区 ⌵
    • 放大器专区
    • 精密转换器专区
    • 音频专区
    • ADE电能计量专区
    • MEMS和传感器专区
    • 接口和隔离专区
    • Power 中文专区
    • ADUC微处理器专区
    • 锁相环专区
    • 开关和多路复用器专区
    • 温度传感器
    • 基准电压源专区
    • 资源库
    • 论坛使用指南
    • 技术支持参考库
    • 在线研讨会
    • 论坛社群活动
    • 论坛激励活动
  • More
  • Cancel
VisualDSP++ Development Tools
  • Processors and DSP
  • Software and Development Tools
  • VisualDSP++ Development Tools
  • Cancel
VisualDSP++ Development Tools
Documents FAQ: How to debug a target board which boots from Flash?
  • Q&A
  • Discussions
  • Documents
  • Members
  • Tags
  • Reports
  • Managers
  • More
  • Cancel
  • New
VisualDSP++ Development Tools requires membership for participation - click to join
  • Documents
  • FAQ: A number of registers appear to be missing from sysreg.h in VisualDSP++ 5.0 compared to earlier versions
  • FAQ: Able to install the base release of VisualDSP++ 5.0 without any problems but encountering a 'Could not find XML file or the XML file might be corrupted!’ message when trying to install an update.
  • FAQ: ADSP-21369 EZ-KIT lite licence installation
  • FAQ: ADSP-BF506F FLASH Tutorial
  • FAQ: Advantages of using 'Run as Administrator' on Windows 7 or 8 for VisualDSP++
  • FAQ: After reformatting my hard-drive and reinstalling VisualDSP I get the error "A valid license could not be found" error, and can no longer run VisualDSP.
  • FAQ: Are international character sets supported by VisualDSP++?
  • FAQ: Can I install your Floating License Tools on a server running Linux?
  • FAQ: Can I run more than one instance of VisualDSP++ at a time?
  • FAQ: Can I undo a VisualDSP++ Update or roll-back to a previous update?
  • FAQ: Does ICE1000 support BTC?
  • FAQ: Does VisualDSP++ include a Stand Alone Flash Programmer?
  • FAQ: Does VisualDSP++ use absolute or relative paths?
  • FAQ: Does VisualDSP++® support the new ADSP-BF60x processor family?
  • FAQ: Error "The XML page cannot be displayed" when trying to view a linker map file
  • FAQ: Error Connecting to ADSP-21489 EZ-Kit Visual DSP++
  • FAQ: ftell function return value in VDSP
  • FAQ: How can I obtain the VisualDSP++ Software License Agreement?
  • FAQ: How can I rectify HP-USB-ICE Emulator issue
  • FAQ: How can I specify different compiler options for individual files in a project?
  • FAQ: How can you use a C-function, defined in a separate file, in a method of a C++-class?
  • FAQ: How do I configure my Firewall for a Floating License
  • FAQ: How do I Enable Python script in VDSP
  • FAQ: How do I move my VisualDSP++ Floating License Server to a new machine?
  • FAQ: How do I resolve __unknown_exception_occurred?
  • FAQ: How do I use FLEXnet Licensing with more than one product? Can I combine license.dat files?
  • FAQ: How do I use the Tools Utility ROM on the ADSP-BF592?
  • FAQ: How do I verify the Analog Devices products, versions and licenses that are installed on my computer?
  • FAQ: How do Reset, Reload and Restart differ?
  • FAQ: How do you view a Map file?
  • FAQ: How does the IDDE know which words to syntax highlight?  Can I add my own words to this list?
  • FAQ: How to build .bin in VisualDSP++
  • FAQ: How to debug a target board which boots from Flash?
  • FAQ: How to generate a makefile from a VisualDSP++ project?
  • FAQ: How to generate assembly code (.s files) from Visual DSP project?
  • FAQ: How to load and run a program from flash on an EZ-KIT in VisualDSP++?
  • FAQ: How to Resolve [Error li1040]
  • FAQ: How to use License Borrowing feature of VisualDSP++
  • FAQ: How to use the function of image processing toolbox with Visual DSP++?
  • FAQ: I am looking for the source files of runtime libraries which is provided by VisualDSP++ Tools. Where I can find them?
  • FAQ: I have installed a Test Drive license. Why can't I create an "EZ-KIT Lite" session?
  • FAQ: I need to transfer my license to a new machine (or, my hard drive crashed and had to be reformatted). How do I register my license against a new host ID?
  • FAQ: I uninstalled VisualDSP++ due to a problem, and now when I’m trying to reinstall my serial number I receive the message “The serial number has already been used and can be installed only once”. What should I do?
  • FAQ: I've recently upgraded to VisualDSP++ 5.0 from VisualDSP++ 3.5 or earlier. My license.dat file was copied over during installation, but only Simulator sessions are now available.
  • FAQ: I’ve just installed a full license or evaluation license and now I get a message telling me that the license will expire in X days.
  • FAQ: Increasing the maximum number of sockets in lwIP in VisualDSP++.
  • FAQ: Is it possible to backup/restore a VisualDSP++ Session
  • FAQ: Is it possible to mix objects produced by different versions of VisualDSP++?
  • FAQ: Is the Green Hills Blackfin Processor development suite going to replace the VisualDSP++ suite?
  • FAQ: Project Building Error - An invalid argument was encountered
  • FAQ: Question about VDK heap
  • FAQ: Speeding up slow build times in VisualDSP++
  • FAQ: Support for Parallel Builds in VisualDSP++
  • FAQ: System requirements for VisualDSP++ and supported operating systems
  • FAQ: Target Halted due to Software Breakpoint
  • FAQ: The VisualDSP++ SAFP does not work on 64-bit machine's
  • FAQ: Unable to enter breakpoints in my code in VisualDSP++.
  • FAQ: Unable to view variables in the Locals window and the Expressions window displays "Expressions Window: ERROR: Unknown variable or symbol"
  • FAQ: VDSP license update inquiry
  • FAQ: VDSP++ doesn't show file extension into editor tabs
  • FAQ: Visual DSP++ runtime error
  • FAQ: VisualDSP++ 5.0 SD card driver reports incorrect size/ fails to be recognized by Windows
  • FAQ: VisualDSP++ and 64-bit Windows
  • FAQ: VisualDSP++ STDIO is slow, and interrupts processing of real-world data
  • FAQ: What are the differences between the Compiled Simulator and the Cycle Accurate Simulator?
  • FAQ: What OS will VisualDsp run under. 
  • FAQ: What types does VisualDSP++ compiler use to implement enumerations and enumeration constants? 
  • FAQ: What's New in VisualDSP++ 5.0 Update 9?
  • FAQ: When I try to connect to VisualDSP++ via remote desktop I encounter the following error message - ERROR: Terminal Server remote client not allowed
  • FAQ: When I try to install VisualDSP++ 5.0 on my Windows 7 machine I encounter a message stating that “Windows can’t verify the publisher of this driver software”. Why?
  • FAQ: When I try to start VisualDSP++ 5.0 either from the Start menu or from within the System folder nothing happens.
  • FAQ: When trying to install VisualDSP++ I encounter a number of errors, such as, 'Install cannot proceed. Could not find XML file or the XML file may be corrupted'. How do i resolve this?
  • FAQ: Where can I find details of Tools Anomaly Reports relating to VisualDSP++?
  • FAQ: Where is the C source file which defines VDK functions such as CreateThread() in VisualDSP++?
  • FAQ: Where is the header file that defines VDK data types such as VDK_ThreadCreationBlock?
  • FAQ: Where to find out how much memory is used in Visual DSP++ for Blackfin?
  • FAQ: Which peripherals are supported by the SHARC simulator?
  • FAQ: Which versions of VisualDSP++ are supported on Windows Vista?
  • FAQ: Which VisualDSP++ Updates do I need to install?
  • FAQ: Why do I receive, "The serial number has already been used and can be installed only once" when entering a Test Drive license?
  • FAQ: Why does my code stop working when I enable optimization?
  • FAQ: Why does my LDF file not open in the Expert Linker in VisualDSP++ 5.0 Update 2?
  • FAQ: Why is my Blackfin LDF marked as Read Only and why cant i make modifications to the text version of the file?
  • FAQ: Will my License number work with different versions of VisualDSP?
  • FAQ: Windows 7 Compatibility in VisualDSP++ Development Tools
  • FAQ: With regards Floating License on Windows 8.1
  • Guidelines for Posting VisualDSP++ Development Tools Issues
  • How to transfer VisualDSP++ Floating License Server to new machine?
  • VisualDSP++ 5.1.1 Download
  • VisualDSP++ 5.1.1 users should upgrade to VisualDSP++ 5.1.2
  • VISUALDSP++ DEVELOPMENT TOOLS
  • [FAQ] : Can we create the FPGA program with VisualDSP?
  • [FAQ] : corrupt project file Error VisualDSP++ 3.0
  • [FAQ] : How to run Stand-Alone Flash Programmer without VisualDSP++ environment?
  • [FAQ] : How to Verify Contents of Flash using VisualDSP++?
  • [FAQ] : In VDSP, can we switch between DHCP and static IP at run time
  • [FAQ] : Installation Failure error in VDSP while calling 21020ICE.inf file
  • [FAQ] : Is it possible to accept third party agreement for supporting VDSP on Windows 10
  • [FAQ] : Is there any newer emulator that could work with ADSP-218x?
  • [FAQ] : Is there any tool in the Visual DSP that can monitor the thread occupied time?
  • [FAQ] : Placement of data in VisualDSP 3.5
  • [FAQ] : Purpose of GetThreadStackUsage() function in VDSP toolchain?
  • [FAQ] : Ticks for VDK_Sleep()
  • [FAQ] : What is the usage of optimization pragmas in VisualDSP?
  • [FAQ]: How can I obtain 90 days test drive license for VisualDSP++?
  • [FAQ]: How can I obtain university license for VDSP?
  • [FAQ]: Installation error “Error registering a file with Windows” for VDSP++ in windows 10
  • [FAQ]: Transforming source code asm21k .asm and .arch file from DSP21k Toolkit to VDSP 5.X.X?
  • [FAQ]: What are the different types of licenses for VisualDSP++?
  • [FAQ]:How to use relative paths in VisualDSP?

FAQ: How to debug a target board which boots from Flash?

Q.

I've loaded my program onto Flash, and now I would like to debug with HPUSB-ICE attached to my BF533 target board. How can I do this?

..............................

A.

Debugging an application which boots from Flash on your target board is relatively simple with an EZ-KIT session, as we offer a 'Boot Load' option within VisualDSP++ which will reset the target EZ-KIT so it starts running from Flash, allowing debugging of the application as with debugging an executable (DXE). This option is only for EZ-KIT Lite via Debug Agent platforms, and is available via 'Settings'->'Boot Load'.

If the target is a custom target board, you need to configure the way in which VisualDSP++ connects to your target, to ensure that when VisualDSP++ does connect to your board it does not reset the processor.

There are three different Initial Connection Settings available:

*Halt and Reset: (Default)

   This is the standard Connection Setting used for hardware targets in VisualDSP++. Once the IDDE connects to the target it halts the processor, and performs a Core Reset. Note that after a Core Reset, Boot does not start automatically. This setting is not suitable for debugging a target booting from Flash.

*Halt:

   This Connection Setting will simply halt the target processor once VisualDSP++ connects to your board. It does not perform and additional actions, so code which has booted from flash can be resumed using the 'Debug'->'Run' command.

*Do Not Disturb:

   This Connection Setting will allow VisualDSP++ to establish a connection with your target board, but will perform no further actions.  Any code booting from flash will run uninterrupted until any debug commands are issued from the IDDE. This setting is not suitable for BF561 Targets, the VisualDSP++ IDDE will simply issue a halt if this setting is chosen.

Configuring the Platform:

The Initial Connection Settings are configured via the settings for your 'Platform', which can be modified/created within the Configurator. Below is an example for configuring a single BF533 Target:

  1. Open VisualDSP++, go to 'Session'->'New Session' and click "Configurator". Alternatively, this can be accessed from the Windows Start Menu via 'Start'->'Programs'->'Analog Devices'->'VisualDSP++'->'VisualDSP++ Configurator'.
  2. Click on the "New" button or, from the 'Platform Templates', double-click on an existing platform similar to your target if one exists (the processor can be changed when configuring the platform).
  3. First, enter a suitable name for your target within the 'Platform' section. e.g. "BF533 via HPUSB-ICE Halt only".
  4. Still within the 'Platform' section, select the appropriate Emulator for your connection from the 'Type' drop-down menu. Note that the 'Device ID' in the 'Emulator Settings' section should be set to "0" for the USB-ICE and HPUSB-ICE. The default JTAG I/O Voltage is "3.3/5".
  5. Now, double click on "Device 0" in the 'Devices'. This will open the Device Properties window, so select your processor from the 'Type' drop-down list, if it is not already populated correctly.
  6. You will now see that you can set the 'Initial Connection Options' to 'Halt then Reset', 'Halt' or 'Do Not Disturb'.
  7. For a target which is booting from Flash, you will want to choose either 'Halt' or 'Do Not Disturb' for your connection, as described above. Choose 'OK'.
  8. Click 'OK' to close the Configurator and you will return to the 'New Session' wizard.
  9. Your platform will now be available to connect to under the "Emulator" sessions for the appropriate Processor Family and Target Processor. For our example, it would be available via  'Blackfin'->'Emulator'->'BF533 via HP-USB-ICE Halt only'. This time, the 'Halt' or 'Do Not disturb' setting will ensure that the device is not reset when VisualDSP++ connects to it, allowing the Application to execute from flash, and debug of its execution.

Further details regarding configuring the platform can be found in the VisualDSP Documentation at 'Help'->'Contents'->'Graphical Environment'->'Emulation Tools'->'VisualDSP++ Configurator'.

Debugging the Application:

Actually debugging the application, albeit possible, is not fully featured. Firstly, 'C' level debugging is not possible, as only assembly level single stepping can be used. Secondly, breakpoints will not be available for code which resides in flas; only hardware breakpoints can be used. Even with these restrictions, it is possible to view memory and registers from flash exactly as though it were internal memory. To view Debug Symbols, you will need to choose 'File'->'Load Symbols', and select your application's DXE file.

Another way to debug the application is to put following instruction at the start of your code or kernel/init code, and create the kernel dxe with this code. This insruction will cause the processor to loop at the start of the application.

[SHARC]:    JUMP(PC,0);

[Blackfin]: JUMP 0;

1. build a loader file with the kernel/init code dxe built above.

2, Flash the code onto your board using a flash programmer. Close VisualDSP++.

3. Boot the code by pressing reset on the board.

4. Open the VisualDSP++  with a new session having the processor in HALT state.

5. Open the VisualDSP++ session created above. Load symbols from the kernel project.

In the disassembly window the program counter will be looping at the jump(pc,0) - or jump 0 - instruction. Replace the jump(pc,0) - or jump 0 - with a 'nop' instruction in the disassembly window and you can now step through your kernel/init code/application as required.

  • idde
  • emulator_sw
  • visualdsp++
  • debugging
  • build_env
  • ice_kit
  • Share
  • History
  • More
  • Cancel
Comments
Anonymous
Related
 
社交网络
快速链接
  • 关于ADI
  • Partners
  • 模拟对话
  • 职业
  • 联系我们
  • 投资信息
  • 新闻中心
  • 质量和可靠性
  • 办事处与代理商
  • Analog Garage
语言
  • English
  • 简体中文
  • 日本語
  • Руccкий
电子快讯

欲获得最新ADI产品、设计工具、培训与活动的相关新闻与文章,请从我们的在线快讯中选出您感兴趣的产品类别,每月或每季度都会发送至您的收件箱。

订阅
Switch to mobile view
Analog Logo
© 1995 - 2022 Analog Devices, Inc. All Rights Reserved 沪ICP备09046653号-1
  • ©
  • 1995 - 2022 Analog Devices, Inc. All Rights Reserved
  • 沪ICP备09046653号-1
  • 网站地图
  • 隐私和保密政策
  • 隐私设置
  • 使用条款
 
Social
Quick Links
  • About ADI
  • Partners
  • Analog Dialogue
  • Careers
  • Contact us
  • Investor Relations
  • News Room
  • Quality & Reliability
  • Sales & Distribution
  • Analog Garage
Languages
  • English
  • 简体中文
  • 日本語
  • Руccкий
Newsletters

Interested in the latest news and articles about ADI products, design tools, training and events? Choose from one of our 12 newsletters that match your product area of interest, delivered monthly or quarterly to your inbox.

Sign Up
Switch to mobile view
Analog Logo
© 1995 - 2022 Analog Devices, Inc. All Rights Reserved 沪ICP备09046653号-1
  • ©
  • 1995 - 2022 Analog Devices, Inc. All Rights Reserved
  • 沪ICP备09046653号-1
  • Sitemap
  • Privacy & Security
  • Privacy Settings
  • Terms of use
EngineerZone Uses cookies to ensure you get the best experience in our community. For more information on cookies, please read our Privacy & Security Statement.