MICROCHIP Stepper Theta Generation v4.2 Motor Control User Guide

June 10, 2024
MICROCHIP

MICROCHIP Stepper Theta Generation v4.2 Motor Control

MICROCHIP-Stepper-Theta-Generation-v4.2-Motor-Control-
fig-1

Introduction

The Stepper Theta Generation v4.2 is a device used for position control by moving through a certain number of steps. The stepper motor has a fixed number of steps per revolution, but it is possible to move through micro-steps, which improves the step resolution. The IP block generates theta that is used by the stepper motor control algorithm. This device supports microstepping up to 2048 microsteps, reducing torque ripple and power losses in the motor.

Core Version

This user guide applies to Stepper Theta Generation v4.2.

Supported Tool Flow

Libero software can be used for simulation, synthesis, and layout. Stepper Theta Generation is licensed with encrypted RTL that must be purchased separately. For more information, see Stepper Theta Generation.

Features

Stepper Theta Generation has the following key features:

  • Implementation of IP Core in Libero Design Suite
  • Supports microstepping up to 2048 microsteps
  • Reduces torque ripple and power losses in the motor

Functional Description

The Stepper Theta Generation v4.2 device generates theta that is used by the stepper motor control algorithm. It supports microstepping up to 2048 microsteps, reducing torque ripple and power losses in the motor.

Stepper Theta Generation Parameters and Interface Signals

The device has various input and output signals, which are detailed in the user manual.

  • Input Signals
    List of input signals is provided in the user manual.

  • Output Signals
    List of output signals is provided in the user manual.

  • Timing Diagrams
    The user manual provides timing diagrams for the device.

  • Testbench
    The user manual provides information on how to run simulations using the device.

  • Revision History
    The user manual contains a revision history for the device.

  • Microchip FPGA Support
    The device is supported by Microchip FPGA.

Usage Instructions

To use Stepper Theta Generation v4.2, follow the instructions provided in the user manual. Ensure that you have purchased the encrypted RTL license for the device. You can use Libero software for simulation, synthesis, and layout. Connect the input and output signals as per the instructions provided in the user manual. Run simulations using the testbench provided in the user manual. Refer to the timing diagrams in the user manual to ensure proper timing of signals. Contact Microchip FPGA support for any further assistance.

Introduction

The stepper motor is used for position control by moving through a certain number of steps. While a stepper motor has a fixed number of steps per revolution, it is possible to move through micro-steps, which improves the step resolution. Micro-stepping also reduces torque ripple and power losses in the motor. The IP block generates theta that is used by the stepper motor control algorithm. It is possible to select microstepping up to 2048 microsteps.

Summary

Core Version This document applies to Stepper Theta Generation v4.2.
Supported Device Families •       PolarFire® SoC

•       PolarFire

 | •       RTG4™
 | •       IGLOO® 2
 | •       SmartFusion® 2
Supported Tool Flow| Requires Libero® SoC v11.8 or later releases.
Licensing| Complete encrypted RTL code is provided for the core, enabling the core to be instantiated with SmartDesign. Simulation, Synthesis, and Layout can be performed with Libero software. Stepper Theta Generation is licensed with encrypted RTL that must be purchased separately. For more information, see Stepper Theta Generation.

Features

Stepper Theta Generation has the following key features:

  • Computes the angle and step count
  • Micro-stepping is possible up to 2048 microsteps
  • Generates an angle in position mode and speed mode

Implementation of IP Core in Libero Design Suite

IP core must be installed to the IP Catalog of the Libero® System-on-Chip (SoC) software. This is done automatically through the IP Catalog update function in the Libero SoC software, or the IP core can be manually downloaded from the catalog. Once the IP core is installed in the Libero SoC software IP Catalog, the core can be configured, generated, and instantiated within the SmartDesign tool for inclusion in the Libero project list.

Device Utilization and Performance

The following table lists the device utilization used for Stepper Theta Generation.

Device Details| Resources| Performance (MHz)| RAMs| Math Blocks| Chip Globals
---|---|---|---|---|---
Family| Device| LUTs| DFF| LSRAM| μSRAM
PolarFire® SoC| MPFS250T| 285| 128| 200| 0| 0| 0| 0
PolarFire| MPF300T| 285| 128| 200| 0| 0| 0| 0
SmartFusion® 2| M2S150| 285| 128| 200| 0| 0| 0| 0

Important:

  1. The data in this table is captured using typical synthesis and layout settings. CDR reference clock source was set to Dedicated with other configurator values unchanged.
  2. Clock is constrained to 200 MHz while running the timing analysis to achieve the performance numbers.

Functional Description

  • This section describes the implementation details of the Stepper Theta Generation.
  • The following figure shows the system-level block diagram of the Stepper Theta Generation.

MICROCHIP-Stepper-Theta-Generation-v4.2-Motor-Control-
fig-2

  • The profile of the stepper theta output and resultant current for various micro-stepping options are shown through the following figures.

MICROCHIP-Stepper-Theta-Generation-v4.2-Motor-Control-
fig-3

  • The following figure shows the theta generation in motor phase currents for half step mode.

MICROCHIP-Stepper-Theta-Generation-v4.2-Motor-Control-
fig-4

  • The following figure shows the theta generation motor phase currents in quarter step mode.

MICROCHIP-Stepper-Theta-Generation-v4.2-Motor-Control-
fig-5

  • The following figure shows the theta generation motor phase currents in 1024 micro-stepping mode.

MICROCHIP-Stepper-Theta-Generation-v4.2-Motor-Control-
fig-6

  • The level of micro stepping is decided by the rate limit input and must be an exponent of 2. The slew count input, then decides the speed at which theta value is updated. The output theta is generated till the command number of steps are met and then theta is held at last updated value until command steps changes. However, in speed mode, the output theta is continuously updated.

Stepper Theta Generation Parameters and Interface Signals

This section discusses the parameters in the Stepper Theta Generation GUI configurator and I/O signals.

Input and Output Signals
The following table lists the input and output ports of Stepper Theta Generation.

Signal Name Direction Description
sys_clk_i Input System clock.
reset_i Input Asynchronous active low reset signal.
enable_i Input Input signal enables angle generation.
mode_i Input When set to 0 (zero), generates angle in the Position Mode.

When set to 1, generates angle in the Speed Mode (Continuous rotation mode).

slew_cnt_i| Input| Slew count input – decides the speed at which theta value is updated in terms of 1 µs.
rate_limit_i| Input| Rate limit input – decides the number of Microsteps by defining angle increment Microstep length should be exponent of 2 (for example, 1, 2, 4, 8, 16 and so on).
cmd_step_no_i| Input| Command– the number of steps/micro-steps motor must move.
theta_output_o| Output| Angle generated based on the inputs.
step_cnt_o| Output| Step count output to track the number of steps.

Timing Diagrams

  • This section discusses Stepper Theta Generation timing diagrams.
  • The following figure shows the timing diagram of the Stepper Theta Generation in speed mode.

MICROCHIP-Stepper-Theta-Generation-v4.2-Motor-Control-
fig-7

Testbench

A unified testbench is used to verify and test Stepper Theta Generation called as user testbench. Testbench is provided to check the functionality of the Stepper Theta Generation IP.

Simulation
The following steps describe how to simulate the core using the testbench:

  1. Go to Libero SoC Catalog tab, expand Solutions-MotorControl, double click Stepper Theta Generation, and then click OK. The documentation associated with the IP are listed under Documentation.
    Important: If you do not see the Catalog tab, navigate to View > Windows menu and click Catalog to make it visible.

MICROCHIP-Stepper-Theta-Generation-v4.2-Motor-Control-
fig-8

  1. On the Stimulus Hierarchy tab, select the testbench (stepper_theta_tb.v), right click and then click Simulate Pre-Synth Design > Open Interactively.
    Important: If you do not see the Stimulus Hierarchy tab, navigate to View

    Windows menu and click Stimulus Hierarchy to make it visible.

MICROCHIP-Stepper-Theta-Generation-v4.2-Motor-Control-
fig-9
ModelSim opens with the testbench file, as shown in the following figure.

MICROCHIP-Stepper-Theta-Generation-v4.2-Motor-Control-
fig-10
Important: If the simulation is interrupted due to the runtime limit specified in the .do file, use the run all command to complete the simulation.

Revision History

The revision history describes the changes that were implemented in the document. The changes are listed by revision, starting with the most current publication.

Revision Date Description
A 03/2023 The following list of changes are made in revision A of the

document:

•       Migrated the document to the Microchip template.

•       Updated the document number to DS00004956A from 50200609.

•       Added 3. Timing Diagrams.

•       Added 4. Testbench.

3.0| —| The following is the list of changes in revision 3.0 of the document:

•       Added the IP version to the document title.

•       Removed Configuration Parameter section from Hardware Implementation.

2.0| —| Updated Configuration section.
1.0| —| Revision 1.0 was the first publication of this document.

Microchip FPGA Support

  • Microchip FPGA products group backs its products with various support services, including Customer Service, Customer Technical Support Center, a website, and worldwide sales offices. Customers are suggested to visit Microchip online resources prior to contacting support as it is very likely that their queries have been already answered.
  • Contact Technical Support Center through the website at www.microchip.com/support. Mention the FPGA Device Part number, select appropriate case category, and upload design files while creating a technical support case.
  • Contact Customer Service for non-technical product support, such as product pricing, product upgrades, update information, order status, and authorization.
    • From North America, call 800.262.1060
    • From the rest of the world, call 650.318.4460
    • Fax, from anywhere in the world, 650.318.8044

Microchip Information

The Microchip Website
Microchip provides online support via our website at www.microchip.com/. This website is used to make files and information easily available to customers. Some of the content available includes:

  • Product Support – Data sheets and errata, application notes and sample programs, design resources, user’s guides and hardware support documents, latest software releases and archived software
  • General Technical Support – Frequently Asked Questions (FAQs), technical support requests, online discussion groups, Microchip design partner program member listing
  • Business of Microchip – Product selector and ordering guides, latest Microchip press releases, listing of seminars and events, listings of Microchip sales offices, distributors and factory representatives

Product Change Notification Service

  • Microchip’s product change notification service helps keep customers current on Microchip products. Subscribers will receive email notification whenever there are changes, updates, revisions or errata related to a specified product family or development tool of interest.
  • To register, go to www.microchip.com/pcn and follow the registration instructions.

Customer Support

  • Users of Microchip products can receive assistance through several channels:
    • Distributor or Representative
    •  Local Sales Office
    • Embedded Solutions Engineer (ESE)
    • Technical Support
  • Customers should contact their distributor, representative or ESE for support. Local sales offices are also available to help customers. A listing of sales offices and locations is included in this document.
  • Technical support is available through the website at: www.microchip.com/support

Microchip Devices Code Protection Feature

Note the following details of the code protection feature on Microchip products:

  • Microchip products meet the specifications contained in their particular Microchip Data Sheet.
  • Microchip believes that its family of products is secure when used in the intended manner, within operating specifications, and under normal conditions.
  • Microchip values and aggressively protects its intellectual property rights. Attempts to breach the code protection features of Microchip product is strictly prohibited and may violate the Digital Millennium Copyright Act.
  • Neither Microchip nor any other semiconductor manufacturer can guarantee the security of its code. Code protection does not mean that we are guaranteeing the product is “unbreakable”. Code protection is constantly evolving. Microchip is committed to continuously improving the code protection features of our products.

Legal Notice

  • This publication and the information herein may be used only with Microchip products, including to design, test, and integrate Microchip products with your application. Use of this information in any other manner violates these terms. Information regarding device applications is provided only for your convenience and may be superseded by updates. It is your responsibility to ensure that your application meets with your specifications. Contact your local Microchip sales office for additional support or, obtain additional support at www.microchip.com/en-us/support/design-help/client-support-services.
  • THIS INFORMATION IS PROVIDED BY MICROCHIP “AS IS”. MICROCHIP MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND WHETHER EXPRESS OR IMPLIED, WRITTEN OR ORAL, STATUTORY OR OTHERWISE, RELATED TO THE INFORMATION INCLUDING BUT NOT LIMITED TO ANY IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE, OR WARRANTIES RELATED TO ITS CONDITION, QUALITY, OR PERFORMANCE.
  • IN NO EVENT WILL MICROCHIP BE LIABLE FOR ANY INDIRECT, SPECIAL, PUNITIVE, INCIDENTAL, OR CONSEQUENTIAL LOSS, DAMAGE, COST, OR EXPENSE OF ANY KIND WHATSOEVER RELATED TO THE INFORMATION OR ITS USE, HOWEVER CAUSED, EVEN IF MICROCHIP HAS BEEN ADVISED OF THE POSSIBILITY OR THE DAMAGES ARE FORESEEABLE. TO THE FULLEST EXTENT ALLOWED BY LAW, MICROCHIP’S TOTAL LIABILITY ON ALL CLAIMS IN ANY WAY RELATED TO THE INFORMATION OR ITS USE WILL NOT EXCEED THE AMOUNT OF FEES, IF ANY, THAT YOU HAVE PAID DIRECTLY TO MICROCHIP FOR THE INFORMATION.
  • Use of Microchip devices in life support and/or safety applications is entirely at the buyer’s risk, and the buyer agrees to defend, indemnify and hold harmless Microchip from any and all damages, claims, suits, or expenses resulting from such use. No licenses are conveyed, implicitly or otherwise, under any Microchip intellectual property rights unless otherwise stated.

Trademarks

  • The Microchip name and logo, the Microchip logo, Adaptec, AVR, AVR logo, AVR Freaks, BesTime, BitCloud, CryptoMemory, CryptoRF, dsPIC, flexPWR, HELDO, IGLOO, JukeBlox, KeeLoq, Kleer, LANCheck, LinkMD, maXStylus, maXTouch, MediaLB, megaAVR, Microsemi, Microsemi logo, MOST, MOST logo, MPLAB, OptoLyzer, PIC, picoPower, PICSTART, PIC32 logo, PolarFire, Prochip Designer, QTouch, SAM-BA, SenGenuity, SpyNIC, SST, SST Logo, SuperFlash, Symmetricom, SyncServer, Tachyon, TimeSource, tinyAVR, UNI/O, Vectron, and XMEGA are registered trademarks of Microchip Technology Incorporated in the U.S.A. and other countries.
  • AgileSwitch, APT, ClockWorks, The Embedded Control Solutions Company, EtherSynch, Flashtec, Hyper Speed Control, HyperLight Load, Libero, motorBench, mTouch, Powermite 3, Precision Edge, ProASIC, ProASIC Plus, ProASIC Plus logo, Quiet- Wire, SmartFusion, SyncWorld, Temux, TimeCesium, TimeHub, TimePictra, TimeProvider, TrueTime, and ZL are registered trademarks of Microchip Technology Incorporated in the U.S.A.
  • Adjacent Key Suppression, AKS, Analog-for-the-Digital Age, Any Capacitor, AnyIn, AnyOut, Augmented Switching, BlueSky, BodyCom, Clockstudio, CodeGuard, CryptoAuthentication, CryptoAutomotive, CryptoCompanion, CryptoController, dsPICDEM, dsPICDEM.net, Dynamic Average Matching, DAM, ECAN, Espresso T1S, EtherGREEN, GridTime, IdealBridge, In-Circuit Serial Programming, ICSP, INICnet, Intelligent Paralleling, IntelliMOS, Inter-Chip Connectivity, JitterBlocker, Knob-on-Display, KoD, maxCrypto, maxView, memBrain, Mindi, MiWi, MPASM, MPF, MPLAB Certified logo, MPLIB, MPLINK, MultiTRAK, NetDetach, Omniscient Code Generation, PICDEM, PICDEM.net, PICkit, PICtail, PowerSmart, PureSilicon, QMatrix, REAL ICE, Ripple Blocker, RTAX, RTG4, SAM-ICE, Serial Quad I/O, simpleMAP, SimpliPHY, SmartBuffer, SmartHLS, SMART-I.S., storClad, SQI, SuperSwitcher, SuperSwitcher II, Switchtec, SynchroPHY, Total Endurance, Trusted Time, TSHARC, USBCheck, VariSense, VectorBlox, VeriPHY, ViewSpan, WiperLock, XpressConnect, and ZENA are trademarks of Microchip Technology Incorporated in the U.S.A. and other countries.
  • SQTP is a service mark of Microchip Technology Incorporated in the U.S.A.
  • The Adaptec logo, Frequency on Demand, Silicon Storage Technology, and Symmcom are registered trademarks of Microchip Technology Inc. in other countries.
  • GestIC is a registered trademark of Microchip Technology Germany II GmbH & Co. KG, a subsidiary of Microchip Technology Inc., in other countries.
  • All other trademarks mentioned herein are property of their respective companies.
  • © 2023, Microchip Technology Incorporated and its subsidiaries. All Rights Reserved.

Quality Management System

For information regarding Microchip’s Quality Management Systems, please visit www.microchip.com/quality

Worldwide Sales and Service

AMERICAS ASIA/PACIFIC ASIA/PACIFIC EUROPE

Corporate Office

2355 West Chandler Blvd. Chandler, AZ 85224-6199

Tel: 480-792-7200

Fax: 480-792-7277

Technical Support: www.microchip.com/support Web Address: www.microchip.com Atlanta

Duluth, GA

Tel: 678-957-9614

Fax: 678-957-1455

Austin, TX

Tel: 512-257-3370

Boston Westborough, MA Tel: 774-760-0087

Fax: 774-760-0088

Chicago

Itasca, IL

Tel: 630-285-0071

Fax: 630-285-0075

Dallas

Addison, TX

Tel: 972-818-7423

Fax: 972-818-2924

Detroit

Novi, MI

Tel: 248-848-4000

Houston, TX

Tel: 281-894-5983

Indianapolis Noblesville, IN Tel: 317-773-8323

Fax: 317-773-5453

Tel: 317-536-2380

Los Angeles Mission Viejo, CA Tel: 949-462-9523

Fax: 949-462-9608

Tel: 951-273-7800

Raleigh, NC

Tel: 919-844-7510

New York, NY

Tel: 631-435-6000

San Jose, CA

Tel: 408-735-9110

Tel: 408-436-4270

Canada – Toronto

Tel: 905-695-1980

Fax: 905-695-2078

| Australia – Sydney

Tel: 61-2-9868-6733

China – Beijing

Tel: 86-10-8569-7000

China – Chengdu

Tel: 86-28-8665-5511

China – Chongqing

Tel: 86-23-8980-9588

China – Dongguan

Tel: 86-769-8702-9880

China – Guangzhou

Tel: 86-20-8755-8029

China – Hangzhou

Tel: 86-571-8792-8115

China – Hong Kong SAR

Tel: 852-2943-5100

China – Nanjing

Tel: 86-25-8473-2460

China – Qingdao

Tel: 86-532-8502-7355

China – Shanghai

Tel: 86-21-3326-8000

China – Shenyang

Tel: 86-24-2334-2829

China – Shenzhen

Tel: 86-755-8864-2200

China – Suzhou

Tel: 86-186-6233-1526

China – Wuhan

Tel: 86-27-5980-5300

China – Xian

Tel: 86-29-8833-7252

China – Xiamen

Tel: 86-592-2388138

China – Zhuhai

Tel: 86-756-3210040

| India – Bangalore

Tel: 91-80-3090-4444

India – New Delhi

Tel: 91-11-4160-8631

India – Pune

Tel: 91-20-4121-0141

Japan – Osaka

Tel: 81-6-6152-7160

Japan – Tokyo

Tel: 81-3-6880- 3770

Korea – Daegu

Tel: 82-53-744-4301

Korea – Seoul

Tel: 82-2-554-7200

Malaysia – Kuala Lumpur

Tel: 60-3-7651-7906

Malaysia – Penang

Tel: 60-4-227-8870

Philippines – Manila

Tel: 63-2-634-9065

Singapore

Tel: 65-6334-8870

Taiwan – Hsin Chu

Tel: 886-3-577-8366

Taiwan – Kaohsiung

Tel: 886-7-213-7830

Taiwan – Taipei

Tel: 886-2-2508-8600

Thailand – Bangkok

Tel: 66-2-694-1351

Vietnam – Ho Chi Minh

Tel: 84-28-5448-2100

| Austria – Wels

Tel: 43-7242-2244-39

Fax: 43-7242-2244-393

Denmark – Copenhagen

Tel: 45-4485-5910

Fax: 45-4485-2829

Finland – Espoo

Tel: 358-9-4520-820

France – Paris

Tel: 33-1-69-53-63-20

Fax: 33-1-69-30-90-79

Germany – Garching

Tel: 49-8931-9700

Germany – Haan

Tel: 49-2129-3766400

Germany – Heilbronn

Tel: 49-7131-72400

Germany – Karlsruhe

Tel: 49-721-625370

Germany – Munich

Tel: 49-89-627-144-0

Fax: 49-89-627-144-44

Germany – Rosenheim

Tel: 49-8031-354-560

Israel – Ra’anana

Tel: 972-9-744-7705

Italy – Milan

Tel: 39-0331-742611

Fax: 39-0331-466781

Italy – Padova

Tel: 39-049-7625286

Netherlands – Drunen

Tel: 31-416-690399

Fax: 31-416-690340

Norway – Trondheim

Tel: 47-72884388

Poland – Warsaw

Tel: 48-22-3325737

Romania – Bucharest

Tel: 40-21-407-87-50

Spain – Madrid

Tel: 34-91-708-08-90

Fax: 34-91-708-08-91

Sweden – Gothenberg

Tel: 46-31-704-60-40

Sweden – Stockholm

Tel: 46-8-5090-4654

UK – Wokingham

Tel: 44-118-921-5800

Fax: 44-118-921-5820

Read User Manual Online (PDF format)

Read User Manual Online (PDF format)  >>

Download This Manual (PDF format)

Download this manual  >>

Related Manuals