S32 Design Studio 1.2 to 2017.R1 - SPT assembler failures

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

S32 Design Studio 1.2 to 2017.R1 - SPT assembler failures

Jump to solution
1,483 Views
markthompson170
Contributor III

Hi

I have updated to S32 Design Studio 2017.R1 (From 1.2) and it seems that most of the SPT assembler is now broken/nonfunctional ?

Has there been a change in the syntax  ?

All my SPT asm code that was running fine on the older version is now having build errors.

 

Also the SPT graph is totally non-operational. See errors at bottom of message.

Thanks

Mark

Example code:

SPT_CACHE_Test_1:

       // Copy from SysRam to OpRam then Back to SysRam

       pdma .signext .notag .16real .sysram2opram .async 0x080 0xDEADDEAD, 0x8000, 0, 1, 0, 1

       pdma .signext .notag .16real .opram2sysram .sync  0x080 0xDEADDEAD, 0x8000, 0, 1, 0, 1

       sync

       stop

 

Error reported:

Description         Resource             Path       Location              Type

pdma .signext .notag .16real .sysram2opram .async 0x080 0xDEADBEEF,0x8000,0,1,0,1: 

No version of instruction pdma matched the given arguments.      

 

I’m getting these errors for all these instructions:

               pdma

               pdma.ind

               rdx4/rdx2

               maxs

               fir

 

No errors for these instructions

               Add

               Wait

               Set

               Get

               Loop

               Next

               sync

   Stop

 

S32 Design Studio for Power Architecture

Version: 2017.R1

Build id: 171018

 

SPT Graph errors:

 

Failed to create the part's controls

java.lang.NullPointerException

               at org.eclipse.sirius.diagram.business.internal.experimental.sync.DDiagramSynchronizer.getAllMandatoriesAdditionalLayers(DDiagramSynchronizer.java:344)

               at org.eclipse.sirius.diagram.business.internal.experimental.sync.DDiagramSynchronizer.activateNewMandatoryAdditionalLayers(DDiagramSynchronizer.java:311)

               at org.eclipse.sirius.diagram.business.internal.experimental.sync.DDiagramSynchronizer.refreshOperation(DDiagramSynchronizer.java:373)

               at org.eclipse.sirius.diagram.business.internal.experimental.sync.DDiagramSynchronizer.refresh(DDiagramSynchronizer.java:356)

               at org.eclipse.sirius.diagram.business.internal.sync.DDiagramSynchronizer.refresh(DDiagramSynchronizer.java:91)

               at org.eclipse.sirius.diagram.business.internal.dialect.DiagramDialectServices.refresh(DiagramDialectServices.java:271)

               at org.eclipse.sirius.business.internal.dialect.DialectManagerImpl.refresh(DialectManagerImpl.java:115)

               at org.eclipse.sirius.business.internal.dialect.DialectManagerImpl.refresh(DialectManagerImpl.java:106)

               at org.eclipse.sirius.diagram.ui.business.internal.command.RefreshDiagramOnOpeningCommand.doExecute(RefreshDiagramOnOpeningCommand.java:62)

               at org.eclipse.emf.transaction.RecordingCommand.execute(RecordingCommand.java:135)

               at org.eclipse.emf.common.command.CompoundCommand.execute(CompoundCommand.java:261)

               at org.eclipse.emf.workspace.EMFCommandOperation.doExecute(EMFCommandOperation.java:119)

               at org.eclipse.emf.workspace.AbstractEMFOperation.execute(AbstractEMFOperation.java:150)

               at org.eclipse.core.commands.operations.DefaultOperationHistory.execute(DefaultOperationHistory.java:488)

               at org.eclipse.emf.workspace.impl.WorkspaceCommandStackImpl.doExecute(WorkspaceCommandStackImpl.java:208)

               at org.eclipse.emf.transaction.impl.AbstractTransactionalCommandStack.execute(AbstractTransactionalCommandStack.java:165)

               at org.eclipse.emf.transaction.impl.AbstractTransactionalCommandStack.execute(AbstractTransactionalCommandStack.java:219)

               at org.eclipse.sirius.diagram.ui.tools.internal.editor.DDiagramEditorImpl.launchRefresh(DDiagramEditorImpl.java:1253)

               at org.eclipse.sirius.diagram.ui.tools.internal.editor.DDiagramEditorImpl.initializeGraphicalViewer(DDiagramEditorImpl.java:1435)

               at org.eclipse.sirius.diagram.ui.tools.internal.editor.DDiagramEditorImpl.createOriginalGraphicalViewer(DDiagramEditorImpl.java:1392)

               at org.eclipse.sirius.diagram.ui.tools.internal.editor.DDiagramEditorImpl.createMainDiagramSection(DDiagramEditorImpl.java:1318)

               at org.eclipse.sirius.diagram.ui.tools.internal.editor.DDiagramEditorImpl.createGraphicalViewer(DDiagramEditorImpl.java:1307)

               at org.eclipse.gef.ui.parts.GraphicalEditor.createPartControl(GraphicalEditor.java:171)

               at org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditor.createPartControl(DiagramEditor.java:1580)

               at org.eclipse.gmf.runtime.diagram.ui.parts.DiagramEditorWithFlyOutPalette.createPartControl(DiagramEditorWithFlyOutPalette.java:328)

               at org.eclipse.gmf.runtime.diagram.ui.resources.editor.parts.DiagramDocumentEditor.createPartControl(DiagramDocumentEditor.java:1514)

               at org.eclipse.sirius.diagram.ui.tools.internal.editor.DDiagramEditorImpl.createPartControl(DDiagramEditorImpl.java:509)

               at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.createPartControl(CompatibilityPart.java:150)

               at org.eclipse.ui.internal.e4.compatibility.CompatibilityEditor.createPartControl(CompatibilityEditor.java:99)

               at org.eclipse.ui.internal.e4.compatibility.CompatibilityPart.create(CompatibilityPart.java:340)

               at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

               at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

               at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

               at java.lang.reflect.Method.invoke(Unknown Source)

               at org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:55)

               at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:966)

               at org.eclipse.e4.core.internal.di.InjectorImpl.processAnnotated(InjectorImpl.java:931)

               at org.eclipse.e4.core.internal.di.InjectorImpl.inject(InjectorImpl.java:151)

               at org.eclipse.e4.core.internal.di.InjectorImpl.internalMake(InjectorImpl.java:375)

               at org.eclipse.e4.core.internal.di.InjectorImpl.make(InjectorImpl.java:294)

               at org.eclipse.e4.core.contexts.ContextInjectionFactory.make(ContextInjectionFactory.java:162)

               at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.createFromBundle(ReflectionContributionFactory.java:105)

               at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.doCreate(ReflectionContributionFactory.java:74)

               at org.eclipse.e4.ui.internal.workbench.ReflectionContributionFactory.create(ReflectionContributionFactory.java:56)

               at org.eclipse.e4.ui.workbench.renderers.swt.ContributedPartRenderer.createWidget(ContributedPartRenderer.java:129)

               at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createWidget(PartRenderingEngine.java:975)

               at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:651)

               at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.safeCreateGui(PartRenderingEngine.java:757)

               at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.access$0(PartRenderingEngine.java:728)

               at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$2.run(PartRenderingEngine.java:722)

               at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)

               at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.createGui(PartRenderingEngine.java:706)

               at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.createElement(PartServiceImpl.java:1257)

               at org.eclipse.e4.ui.internal.workbench.PartServiceImpl.showPart(PartServiceImpl.java:1218)

               at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:401)

               at org.eclipse.ui.internal.EditorReference.getEditor(EditorReference.java:290)

               at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:3213)

               at org.eclipse.ui.internal.WorkbenchPage.access$25(WorkbenchPage.java:3176)

               at org.eclipse.ui.internal.WorkbenchPage$10.run(WorkbenchPage.java:3158)

               at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)

               at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:3153)

               at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:3117)

               at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:3098)

               at org.eclipse.sirius.diagram.ui.business.internal.dialect.DiagramDialectUIServices$1.run(DiagramDialectUIServices.java:208)

               at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:233)

               at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:145)

               at org.eclipse.swt.widgets.Display.syncExec(Display.java:4821)

               at org.eclipse.sirius.common.ui.tools.api.util.EclipseUIUtil.displaySyncExec(EclipseUIUtil.java:336)

               at org.eclipse.sirius.diagram.ui.business.internal.dialect.DiagramDialectUIServices.openEditor(DiagramDialectUIServices.java:218)

               at org.eclipse.sirius.diagram.ui.business.internal.dialect.DiagramDialectUIServices.openEditor(DiagramDialectUIServices.java:179)

               at org.eclipse.sirius.ui.business.internal.dialect.DialectUIManagerImpl.openEditor(DialectUIManagerImpl.java:95)

               at com.nxp.s32ds.vgt.ide.ui.actions.OpenRepresenatationAction$1.runInUIThread(OpenRepresenatationAction.java:52)

               at org.eclipse.ui.progress.UIJob$1.run(UIJob.java:97)

               at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)

               at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:182)

               at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4211)

               at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3827)

               at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1121)

               at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)

               at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1022)

               at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:150)

               at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:693)

               at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)

               at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:610)

               at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:148)

               at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:138)

               at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)

               at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)

               at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)

               at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:388)

               at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243)

               at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

               at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

               at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

               at java.lang.reflect.Method.invoke(Unknown Source)

               at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:673)

               at org.eclipse.equinox.launcher.Main.basicRun(Main.java:610)

               at org.eclipse.equinox.launcher.Main.run(Main.java:1519)

1 Solution
983 Views
markthompson170
Contributor III

Update:    SPT graph failure was caused by Project_Z4.aird file had a old project path that does not exist.

                Manually changing the path to the current workspace fixed the problem. Why the import / update process

                didn't pick this up i don't know.

 

SPT assembler seems to be pointed to the wrong assembler, it seem to be the SPT 1.x assembler.

I can command line assemble the code using the 2.0 and 2.5 assembler. the 1.x creates the errors.

The path to the assembler should be

           SPT Tool Path  ${SPT2_TOOLCHAIN_DIR}/bin

in the settings, but it seems to be ignored.

I can find any place where SPT2_TOOLCHAIN_DIR is defined.

 

Hard coded it to  C:\NXP\S32DS_Power_v2017.R1\S32DS\SPT2.5\bin, but still the same problem.

It seems some setting/configuration in the project is pointing it to the SPT 1.x assembler.

This what is in the path. It's not tracking the project settings.
   C:\NXP\S32DS_Power_v2   017.R1\eclipse\..\S32DS\SPT\bin;

 

 Problem found: You must reboot your windows box, it seems that S32DS updates the PATH and it is out of date utill you reboot. After the reboot the SPT assembler issue went away.

View solution in original post

3 Replies
984 Views
markthompson170
Contributor III

Update:    SPT graph failure was caused by Project_Z4.aird file had a old project path that does not exist.

                Manually changing the path to the current workspace fixed the problem. Why the import / update process

                didn't pick this up i don't know.

 

SPT assembler seems to be pointed to the wrong assembler, it seem to be the SPT 1.x assembler.

I can command line assemble the code using the 2.0 and 2.5 assembler. the 1.x creates the errors.

The path to the assembler should be

           SPT Tool Path  ${SPT2_TOOLCHAIN_DIR}/bin

in the settings, but it seems to be ignored.

I can find any place where SPT2_TOOLCHAIN_DIR is defined.

 

Hard coded it to  C:\NXP\S32DS_Power_v2017.R1\S32DS\SPT2.5\bin, but still the same problem.

It seems some setting/configuration in the project is pointing it to the SPT 1.x assembler.

This what is in the path. It's not tracking the project settings.
   C:\NXP\S32DS_Power_v2   017.R1\eclipse\..\S32DS\SPT\bin;

 

 Problem found: You must reboot your windows box, it seems that S32DS updates the PATH and it is out of date utill you reboot. After the reboot the SPT assembler issue went away.

983 Views
mchavosh
Contributor I

Hi,

I have work with S32DS power architecture V1.1. When I was upgrade my S32DS to version 1.2 I have a lot of SPT errors such as:

pastedImage_1.png all of them related to No version is matched

My SPT is an assembly code. It seems that the SPT versions does not matched. The above path and comments are not clear for me. Where should I change the SPT path or version? Is there any setting in the project to change it?

Thanks

MC

0 Kudos
983 Views
markthompson170
Contributor III

Hi

I don’t think it’s a path issue, I think it is a slight change in the format of the RDX2 instruction.

Try formatting like this, this is working for me.

rdx2 .cmplx .no_repeat .qext .noovs .round3 .nosft .nosplit CHIRPS_PER_FRAME 0x9000, 0x8000, TWI_ADDR_128_UNIF, 1, 1

Mark

0 Kudos