Analog.com Analog Dialogue Wiki English 简体中文 日本語
EngineerZone
EngineerZone
  • Log In
  • Site
  • Search
  • User
  • Forums

    Popular Forums

    • RF and Microwave
    • Power Management
    • Video
    • FPGA Reference Designs
    • Precision ADCs
    • Linux Software Drivers
    • SigmaDSP Processors & SigmaStudio Dev. Tool

    Product Forums

    • A2B
    • Amplifiers
    • Analog Microcontrollers
    • Clock and Timing
    • Data Converters
    • Direct Digital Synthesis (DDS)
    • Energy Monitoring and Metering
    • Interface and Isolation
    • MEMS Inertial Sensors
    • Processors and DSP
    • Switches/Multiplexers
    • Temperature Sensors
    • Voltage References
    View All

    Application Forums

    • Audio
    • Automated Test Equipment (ATE)
    • Condition-Based Monitoring
    • Depth, Perception & Ranging Technologies
    • Embedded Vision Sensing Library
    • Motor Control Hardware Platforms
    • Optical Sensing
    • Precision Technology Signal Chains Library
    • Video
    • Wireless Sensor Networks Reference Library

    Design Center Forums

    • ACE Evaluation Software
    • ADEF System Platforms
    • Design Tools and Calculators
    • FPGA Reference Designs
    • Linux Software Drivers
    • Microcontroller no-OS Drivers
    • Reference Designs
    • Signal Chain Power (SCP)
    • Software Interface Tools
    • System Demonstration Platform (SDP) Support
  • Learn

    Highlighted Webinar

    Maximize the Benefits of High Bandwidth Current Sense Amplifiers for Space Constrained Applications

    Recent Discussions

    • Pluto is not receiving data
    • ADALM-pluto sampling frequency
    • ADALM PLUTO SDR
    • Bad FIT image format and MSD mounting errors in firmware built for Sidekiq Z2
    • set the sample rate to 30MHz or the maximum that usb2.0 allows

    Places

    • ADI Education Home
    • ADI Webinars
    • StudentZone (Analog Dialogue)
    • Video Annex
    • Virtual Classroom

    Latest Webinars

    • Maximize the Benefits of High Bandwidth Current Sense Amplifiers for Space Constrained Applications
    • Design Efficient Power Solutions for Battery-powered Applications
    • Shunt-based Energy Metering in High-Power Applications
    • Isolating GigaSpeed: Unlocking Data Integrity for USB and HDMI Communication
    • Extend Battery Life and Maximize Performance - Let Supervisors Do The Work
    View All Webinars
  • Community Hub

    Challenge Yourself!

      KCC's Quizzes AQQ244 about Wafer Processing Yield puzzle
    View All

    Places

    • Community Help
    • Logic Lounge
    • The Weekly Brew

    Resources

    • EZ Code of Conduct
    • Getting Started Guide
    • ADI: Words Matter
    • Community Help Videos
    View All
  • Blogs

    Highlighted Blogs

    The Changing Nature of Logistics and Retail Automation

     

    Variable Speed Drive 101

    Latest Blogs

    • How to Optimize Voltage Regulators for Powering an Audio Amplifier
    • EMC Standards: What Are They, and Why Do They Matter?
    • Understanding Grating Lobes with the Phaser (CN0566) Exploration Kit
    • Digitizing, Connecting, and Delivering Energy Efficiency – the Future of Intelligent Buildings
    • Pain or Injury
    Read All Blogs

    ADI Blogs

    • EZ Spotlight
    • The Engineering Mind
  • Partners

    Electronic Design Services - PartnerZone

    • Boston Engineering
    • Calian, Advanced Technologies
    • Colorado Engineering Inc. (DBA CAES AT&E)
    • Clockworks Signal Processing
    • Epiq Solutions
    • Fidus
    • PalmSens
    • Richardson RFPD
    • Tri-Star Design, Inc.
    • VadaTech
    • Vanteon
    • X-Microwave
    View All
SHARC Processors
  • Processors and DSP
SHARC Processors
Documents ADSP-SC5xx/215xx Boot with CRC32
  • Forums
  • Documents
  • Members
  • Tags
  • More
  • Cancel
  • Documents
  • +214xx IIR AcceleratorL FAQ
  • +214xx processors: FAQ
  • Accessing SPI Flash with more than 128Mb *LDR
  • +ADSP-21364: FAQ
  • +ADSP-21369: FAQ
  • +ADSP-21371: FAQ
  • +ADSP-21469: FAQ
  • +ADSP-21479: FAQ
  • +ADSP-21489: FAQ
  • +ADSP-2148x: FAQ
  • +ADSP-SC58x: FAQ
  • -ADSP-SC5xx/215xx Boot with CRC32
    • ADSP-21489 SPORT example for TDM mode
  • +Breakpoint: FAQ
  • +Debug an Application: FAQ
  • Does ASRC TDM mode used the opposite clock edge as in other modes such as I2S for sampling and driving the inputs and outputs?
  • Example commands for generating Secure loader streams for SC59x and 2159x processors
  • Example for FIR Decimation and Interpolation Sampling using ADSP-21569
  • Example for SPI Slave Boot mode for ADSP-21489 using CCES
  • Example to issue a system reset when watchdog expiration event occurs
  • Features of OTP over Secure Booting
  • FIR Accelerator performance degrades when modifier(ADI_FIR_CHANNEL_INFO structure) are other than 1
  • How to configure DAI pins as GPIO?
  • How to program the system core FLAG pins in ADSP-2156x
  • How to read the status of SYS_BMODE pins using software for ADSP-21569 and ADSP-21593?
  • How to select PCG Input source for ADSP-SC59x
  • +I2S PCG: FAQ
  • +JTAG: FAQ
  • Output L and R channels are reversed in AD1939_I2S_Sampled_Based_Talkthru BSP code for ADSP-21469
  • Second stage loader example for SC594
  • +SHARC family: FAQ
  • +SHARC processor: FAQ
  • SPI Chain DMA example for ADSP-21489
  • +SPI serial flash driver: FAQ
  • SSL example for ADSP-21593
  • +SSL: FAQ
  • Support for Automatic Device Detection in Secure Booting
  • +USB VID/PID: FAQ
  • Value of DDR reference resistor (DMC0_RZQ) and ZQ for SC594
  • What is the difference between “adi_signtool.exe” and “signtool.exe”? Does “adi_signtool.exe” only be used with GLXP?
  • What is the maximum supported clock frequency in Linkport DDR mode for SC594
  • What is the Reset value of PADS_PCFG.FAULT_DIS bit ADSP-2159x and SC59x processors
  • What is the SPU_ID for EMDMA0/1 channels in ADSP-SC594/21594

ADSP-SC5xx/215xx Boot with CRC32

The ADSP-SC5xx/ADSP-215xx features CRC32 protection is implemented in hardware. The boot kernel provides mechanisms to allow each block to be verified using a 32-bit CRC. When building a loader file for CRC32 protection, use the -CRC32 <PolynomialCoefficient> switch.

Add -CRC32<PolynomialCoefficient> switch while generating the loader file. It uses the polynomial coefficient if specified, otherwise uses the default coefficient (0xD8018001).

Once the -CRC32 switch is invoked while generating the loader file, it appends an extra block which is basically used by the boot ROM to invoke the CRC32 initialization routine and then start processing each block one by one.

In each block, there is a 16byte header associated with this. The argument field in this comprise of the CRC checksum, which is compared with the generated checksum by the boot ROM based on the default/user-passed polynomial. So, all the block integrity is verified using this.

If any of the block CRC fails, it will be reported as an error by the boot ROM and the application will not boot itself.

Below steps is required:
    The SSL application, will call the ROM API for main application with CRC switch enabled and Hook routine installed.
    The hook routine, can be used to remap the error function pointer to loader application space.
    It will jump to error handler in application space for any issues in processing the bootROM and that will also include CRC errors.
    Inside the error handler function, call ROM API to boot a recovery application.

Please find the attached examples for ADSP-21569 and ADSP-SC584. In this, first it try to boot the application from the flash address 0x40000. If the loader file is corrupted, then it will try to boot the application from the flash address 0x80000.

So, create the loader file with -CRC32<PolynomialCoefficient> switch enabled and modify/remove the content. Load it at flash address 0x40000. Then load the correct file(app2) at flash address 0x80000.ADSP_SC584.zipADSP_21569.zip

  • Share
  • History
  • More
  • Cancel
Related
Recommended
Social
Quick Links
  • About ADI
  • ADI Signals+
  • Analog Dialogue
  • Careers
  • Contact us
  • Investor Relations
  • News Room
  • Quality & Reliability
  • Sales & Distribution
  • Incubators
Languages
  • English
  • 简体中文
  • 日本語
myAnalog

Interested in the latest news and articles about ADI products, design tools, training and events?

Go to myAnalog
Analog Logo
©1995 - 2023 Analog Devices, Inc. All Rights Reserved
沪ICP备09046653号-1
  • Sitemap
  • Legal
  • Privacy & Security
  • Privacy Settings
  • Cookie Settings