S32 デザインスタジオ・ナレッジベース

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

S32 Design Studio Knowledge Base

ディスカッション

ソート順:
1. Build the project. a. Select the build configuration. (optional) b. Click on Build. c. Check there are no compiler errors. 2. Configure the debug configuration to start a debug session. a. Click down arrow next to Debug button. b. Select 'Debug Configurations…' c. Select the debug configuration associated with your current build configuration. d. Select whether to rebuild code each time debug session start is requested. e. Click on Debugger tab. f. Verify proper interface and port. 3. Click Debug
記事全体を表示
Suppose you created an application project for one MCU (S32K144, for example), but your requirements changed, or perhaps you are reusing a previous project to start a new project on a different MCU (derivative from same family). If you are working with the S32 SDK, there is a way to do it. We have detailed the steps in this document. 1) Open the project to be modified and select the C/C++ perspective, ensure that the Processor Expert views are shown 2) From the Components Library, Processors tab, select the new MCU derivative 3) Either double-click OR right-click and select 'Add to project', to add the new processor to your components list for your project. Be sure to select just one of the pin packages, whichever is appropriate for you application. 4) From the Component Inspector*, you will see a message in red text asking if you would like to switch into the configuration for the new processor. Click on the button 'Switch Configuration'. *may have to select pin_mux:PinSettings in the Components view for the project to see the message 5) Open the Project Properties, either select from File menu or right-click on project name and select from the menu. Then go to C/C++ Build -> Settings -> Standard S32DS C Compiler -> Includes and delete all include paths starting with $(S32K1**_SDK_VER_PATH). Repeat this step for the Standard S32DS Assembler -> General include paths. Note: For all changes in C/C++ Build -> Settings, make sure to repeat for all build configurations (RAM, FLASH, Debug, Release, etc.). 6) The paths to the SDK should now be gone. The result should look similar to this: 7) In Standard S32DS C Compiler -> Preprocessor settings, change the defined symbol to the one which is appropriate for the new MCU and click OK. (e.g. CPU_S32K142 for S32K142, CPU_S32K148 for S32K148, etc.) If you are not sure what should be here, then create a new empty project for the new MCU and refer to the settings there. 😎 The Preprocessor setting after the change 9) Click on the 'Generate Processor Expert Code' button in the Components view for your project 10) From Project Explorer, remove the startup and linker files from Project Settings folder 11) Copy startup and linker files for the new MCU from <SDK_PATH>/platform/devices/<CPU>/startup/<Compiler> and <SDK_PATH>/platform/devices/<CPU>/linker/<Compiler> 12) Open the Project Properties, then C/C++ Build -> Settings -> Standard S32DS C Linker -> General and update the linker file path to reflect the new filename and click OK. (in this case: S32K144_64_flash.id to S32K142_32_flash.id) 13) After the change 14) Perform a Clean and a Build operations of the project. 15) Update the device in the debug configurations Now you can change your MCU derivatives!
記事全体を表示
NOTICE: This may NOT work with the newer versions of PEmicro eclipse plugin (e.g. with S32DS for Power 2017.R1). Please use an alternative way described here: https://community.nxp.com/thread/486662?commentID=1068206#comment-1068206 This document describes how to program DCF record into UTEST flash with S32DS for Power v1.1+ using PEMICRO Probe (OpenSDA, USB Multilink, USB Multilink FX...) In  S32 Design Studio for Power v1.2+  the Pemicro plugin update step is not required since it's already included so you can skip  Step 1) Step 1) Update Pemicro Plugin.  See the post below - it's about ARM version of S32DS but the update process for S32DS for Power is exactly the same. You just need is to select e200 component instead of ARM  error while dubbing: "ERROR loading to the device" Step 2) Download and extract Flash programming algorithms for MPC5xxx directly from PEMICRO website into your computer. http://www.pemicro.com/downloads/download_file.cfm?download_id=422 Step 3) Create or reuse an existing S32DS project to connect to the board and inspect the existing content of UTEST/DCF user area memory section. See e.g. MPC5644P example below. Next available address for DCF record of this specific chip is 0x0040_0220 .. 0x0040_0227   Step 3a)  You can export this 64bit free region into a srecord file e.g. MyNewDCF.srec Step 3b)  Adjust Srecord file created to match with DCF record you intend to write. Don't forget to re-calculate Srec checksum. e.g. NOP 0x00000000 00000000   S3 0D 004002200 0000 0000 0000 0000 90 Step 4) Create/clone an existing debugger configuration that will load DCF into UTEST and adjust its parameters. Step 4a) Change the debugger configuration Name and enter the srecord path + file name adjusted in step 3b) as a C/C++ application. Step 4b) Debugger Tab -> Advanced Options - select Use Alternative Algorithm and browse the location where you extracted flash algorithms at step 2)  E.g. Freescale_MPC5744P_1x32x4k_UTest.pcp Step 4c)  Adjust Startup options - Disable Load Symbols and Run on Reset since this configuration is only for programming DCF record and not for debugging. Step 5) Now press Debug button and it should program your DCF record into UTEST flash memory. After debug session is established you can check if the DCF has been programmed correctly into DCF user area in Memory View. Note: The device will process these DCF records during the system reset sequence before the CPU leaves reset.
記事全体を表示
     This summary records my process of using J-LINK Plus in S32 Design Studio for S32 Platform, hoping to help people who use the same tool.   1.Download the latest package: https://www.segger.com/downloads/jlink/   2.Install the downloaded package and some note will show like this.   3.Open J-Link GDB Server V7.8 , if you current firmware version is too low, you will be prompted to upgrade to the latest firmware version.       At this point ,if you use the default configuration to debug the application, the following error will appear.   Modified the "Debug configurations" for S32 Design Studio platform V3.4   Change the highlighted part to the path below. C:\Program Files (x86)\SEGGER\JLink\JLinkGDBServerCL.exe C:\NXP\S32DS.3.4\S32DS\tools\gdb-arm\arm32-eabi\bin\arm-none-eabi-gdb.exe   Modified the "Debug configurations" for S32 Design Studio platform V3.5 Change the highlight part to the path below. C:\Program Files (x86)\SEGGER\JLink\JLinkGDBServerCL.exe C:\NXP\S32DS.3.5\S32DS\tools\gdb-arm\arm32-eabi\bin\arm-none-eabi-gdb.exe   For now, you may debug your project with SEGGER J-Link Plus Tools. Hope it works for you!
記事全体を表示
S32V234 EVB has 32GB of eMMC memory. This memory can be used as OS drive.In text bellow is RED color used for important notes,  GREEN for console commands and BLUE for filenames. Courier font family is used for code/configuration data.  Requirements  Prepared SD Card with linux image (HOWTO: Prepare A SD Card For Linux Boot Of S32V234-EVB Using BSP From VSDK ) and with u-boot.s32 file in boot partition. Host PC machine with Linux OS, NFS, TFTP server and network connectivity with EVB NFS shared folder with BSP Linux root file system (the root.tar file located in [S32DS_Vision]\s32v234_sdk\os\build_content.tar\build_content\v234_linux_build\ ) tftp server with Image, s32v234-evb.dtb and u-boot.s32 files putty or other terminal connected to s32v234 EVB (tested with minicom on Linux) Procedure  Setup NFS share and TFTP server. Please look at internet for more details about NFS and TFTP https://www.digitalocean.com/community/tutorials/how-to-set-up-an-nfs-mount-on-ubuntu-16-04  How do I install and run a TFTP server? - Ask Ubuntu  Don't forget add into root file system files Image, s32v234-evb.dtb and rootfs.tar - we will need them later f or boot and rootfs partitions. Also make sure that all rootfs files are owned by root.  Here is my entry for /etc/exports file for NFS: /rfs    192.168.1.0/24(rw,no_root_squash,sync) and here /etc/xinetd.d/tftp file: service tftp {    protocol = udp    port = 69    socket_type = dgram    wait = yes    user = nobody    server = /usr/sbin/in.tftpd    server_args = /tftpboot    disable = no } It looks like that in ubuntu is some bug and I have to move tftp files location from /tftpboot to /svr/tftp  The tftp file in /etc/xined.d/ remain unchanged. This issue is probably related only to ubuntu.  Make sure that both servers (nfs,tftp) are accessible from other machine (you can use S32V234 EVB started from SD card for that).  I used static IP addresses on PC Host side and EVB. In my case PC has address 192.168.1.1 and EVB 192.168.1.10. You can also use DHCP server - but this is not part of this document. Boot from SD card and stop booting by pressing any key when you see first numbers on terminal window. You can get list of commands by help command. First - we need to write u-boot.s32 file to eMMC. Unfortunately - there can be active only one storage - SD Card or eMMC. We need to copy u-boot.s32 from SD Card to RAM (use RAM address 0xC0000000), deactivate SD Card and connect eMMC. In u-boot console use fatload mmc 0:1 0xC0000000 u-boot.s32 command. Write down the size of loaded file - you will need it later for counting number of sectors. In my case - the file size is 282624 (0x45000).    Once is u-boot.s32 in the RAM, we can disconnect SD card and connect eMMC by switching J37 jumper from 1-2 to 2-3 (there may be different name for other board vesions - but the location is same). After switching from SD to eMMC you need to rescan mmc device by command: mmc rescan You can verify if eMMC is  mapped correctly by  mmcinfo Now we copy u-boot from RAM to emmc. eMMC is located on address 0x1000 - but it is addressed by 512 (0x200) bytes sector size. In this case mmc device address starts on 0x1000/0x200 = 0x08. Number of sectors is (u-boot.s32 filesize) / (sector size) - 0x45000/0x200=0x228. Write u-boot from RAM to eMMC by: mmc write 0xC0000000 0x08 0x228   Now we can switch boot source from SD to eMMC by switches located on rear side of EVB. The switch name may vary across board version but location is again the same. Turn OFF EVB and remove SD card. For booting from eMMC switch SW503 - BOOT CFG (0:7) 7'th switch from OFF to ON. Switches position for eMMC boot: Turn ON EVB and stop again boot in u-boot console. Now we need to configure u-boot for booting from NFS. You can check u-boot variables by  printenv  command. Make sure that nfsbootargs has correct EVB ip address, NFS server IP address and path to root file system. In my case - EVB IP is 192.168.1.10, NFS server is 192.168.1.1 and root file system on host PC machine is located in /rfs directory. You can also test network connectivity to PC Host machie by ping command.  You can change any of system variables by setenv command. For example - IP address can be changed by: setenv ipaddr -f ipaddr 192.168.1.10 Here is printenv output on my EVB:  We are done with configuration - let's boot from NFS by:  run nfsboot It takes a while. At the end you can see login prompt: Login as root user. Now we need create boot and root file system partition on eMMC by fdisk.  Boot partition fdisk /dev/mmcblk0 check if there are already some partitions by  p command in fdisk. If there are partitions - delete all of them by  d command. If done - let's create new boot partion with 255 MB size: n p 1 [ENTER] key for default selection +255M Root FS partition in fdisk continue with: n p [ENTER] key for default selection [ENTER] key for default selection [ENTER] key for default selection Change boot partition type from Linux to FAT32.  t 1 c Write all changes by w   Create filesystem for boot (vfat) and root fs (ext3) partition: mkfs.vfat -n boot /dev/mmcblk0p1 mkfs.ext3 -L rootfs /dev/mmcblk0p2 Now is time for copy some files in new partitions. I created in root home directory boot and rootfs folders:  cd mkdir boot mkdir rootfs mount /dev/mmcblk0p1 ./boot mount /dev/mmcblk0p2 ./rootfs Copy Image and s32v234-evb.dtb files from root to already mounted mmcblk0p1 partition: cp /Image ./boot cp /s32v234-evb.dtb /boot   And now - the final step - untar root file system to mmcblk0p2: tar -xf /rootfs.tar -C ./rootfs We are done. Disconnect Ethernet cable, reboot and wait for login prompt:   Troubleshooting   Can't start u-boot console: You have only about two seconds from power up to interrupt regular boot by pressing key to jump in u-boot console. So - keep trying. Best time for pressing any key is when numbers 2  1 are shown up.  Can't perform NFS boot: check network connectivity between EVB and host PC. Try ping host PC from u-boot console. If it doesn't work - check EVB ipaddress by echo $ipaddr or printenv u-boot command. check that nfsbootargs contain corect path/ip address to NFS root file system. Check again if your NFS directory is accessible from other machine and it is really s32v234 BSP Linux rootfs. Root fs must not be inside some subfolder.  check if you can get files from tftp server from other machine. for example tftp 192.168.1.1  ... get Image Can't perform partitioning of eMMC: Make sure that /dev/mmcblk0 is unmounted (in case that there was already some partitions).  Can't mount partitions on /dev/mmcblk0: Make sure that all files on NFS root file system belongs to root. You can also check boot messages for mount errors related to /proc file system.           
記事全体を表示
        Product Release Announcement Automotive Microcontrollers and Processors S32 Design Studio for ARM v2.0             Austin, Texas, USA August 16, 2017 The Automotive Microcontrollers and Processors’ Embedded Tools Team at NXP Semiconductors, is pleased to announce the first release of the S32 Design Studio for ARM  v2.0  Release content (What is new?) • Eclipse Neon 4.6 Framework • GNU Tools for ARM® Embedded Processors (Launchpad) build (4.9.3 20150529) • ARM64: Linaro GCC 4.9-2015.05 • Libraries included: newlib, newlib-nano and ewl2 (ewl and ewlnano) • P&E Multilink/Cyclone/OpenSDA (with P&E GDB Server) - updated (v3.1.1.20180808) • SEGGER J-Link (with SEGGER GDB Server) -  (V616f_b170707) • New Project wizard to create application and library projects for supported devices • Fully integrated S32 SDK for S32K14x EAR release v.0.8.4. For the details on the feature set  of SDK please refer to SDK Release notes and Reference Manuals attached below. • SDK management included: o Sample Drivers for KEA family (Evaluation grade) o FreeMASTER Serial Communication driver for KEA and S32K families o Automotive Math and Motor Control Libraries for KEA and S32K devices v1.1.8  • Import projects from CodeWarrior for MCU v.10.6 and Kinetis Design Studio for respective supported processors • IAR v7.x compiler support by new project wizard • iSystem, Lauterbach and IAR debuggers support by new project wizard • Kernel Aware debugging for FreeRTOS, OSEK. • Devices supported: o SKEAZN8, SKEAZN16, SKEAZN32, SKEAZN64, SKEAZ128, SKEAZ64 o S32K144 v2.0, S32K148, S32K142 o S32V234 o MAC57D54H Complete S32 Design Studio for ARM v2.0 release notes are available here Installation Notes To download the installer please visit the S32DS product page downloads section. The installer requires the the NEW Activation ID to be entered during the installation. You should receive an email including the Activation ID after starting the download process:   Technical Support S32 Design Studio issues are tracked through the S32DS Public NXP Community space. https://community.nxp.com/community/s32/s32ds
記事全体を表示
Hello,   The new official release of S32DS for Power Architecture v1.1 is available now! You can download it from S32DS product web page: S32 Design Studio IDE|NXP       This release requires the product activation! Please enter the Activation code from the notification email (it is sent after you click on S32DS download button) into the installer dialog (see the screenshots below). The Activation code is valid for both versions (Windows/Linux).     S32 Design Studio is based on Eclipse open development platform and integrates the Eclipse IDE, GNU Compiler Collection (GCC), GNU Debugger (GDB) and other open-source software to offer designers a straightforward development tool with no code-size limitations. This release supports Windows 7/8/8.1/10 (32/64 bit) and Linux versions as well.   S32DS Power v1.1 main features Free of charge tool with no code size limitation (no license file required - Only acti) Eclipse Luna 4.4 Framework GNU Build Tools for e200 processors supports VLE and BookE ISA, LSP, SPE/SPE2 based on gcc 4.9.2, binutils 2.24 and gdb 7.8.2 Libraries included: newlib, newlib-nano and Freescale EWL2 (ewl and ewl-nano) P&E Multilink (with P&E GDB Server) Graphical tool for creating SPT algorithms SDK management included (FreeMASTER for 560xP, AMMCLIBs) GreenHills and Diab compilers support by new project wizard Lauterbach, iSystem** and PLS debuggers support by new project wizard Kernel Aware Debugging FreeRTOS, eCOS, OSEK. "New S32DS project from” added to support project creating from examples Devices supported MPC56xx MPC5601P, MPC5602P, MPC5603P, MPC5604P MPC5644B, MPC5644C, MPC5645B, MPC5645C, MPC5646B, MPC5646C MPC5601D, MPC5602B, MPC5602C, MPC5602D, MPC5603B, MPC5603C, MPC5604B, MPC5604C, MPC5605B, MPC5606B, MPC5607B MPC5606S MPC5604E MPC5644A MPC5643L MPC5676R MPC57xx MPC5775K, MPC5774K MPC5746R, MPC5745R, MPC5743R MPC5777M MPC5777C MPC5748G, MPC5747G, MPC5746G MPC5746C, MPC5745C, MPC5746D, MPC5746B, MPC5745D, MPC5745B MPC5744P, MPC5743P, MPC5742P, MPC5741P S32 S32R274   Host Operating System Support Microsoft Windows 7/8/8.1/10 32-bit and 64-bit (Home and Pro Editions) Linux versions Ubuntu 12.04/14.04, Debian 8, CentOS 7   Technical Support S32 Design Studio is supported on NXP community - https://community.freescale.com/community/s32/s32ds/ For more details see the attached release notes (product & GCC build tools)   * Red items are the new features ** iSystem plugin integration with the project wizard will be available in S32DS PA v1.2   Regards, Stan
記事全体を表示
On reset, all module registers have default values. These settings are typically not ideal for achieving optimal system performance. Also, some peripherals must be configured before they can be used. DCD is the configuration information contained in the DCD image that BootROM uses to configure peripherals on the device. BootROM determines the location of the DCD table from the associated pointer in the IVT.   The main functionality of the DCD Tool is to generate the Device Configuration Data (DCD) image using the format and constraints as specified in the Boot ROM reference manual.   In the steps below, an example process for creating the DCD binary for initializing SRAM is shown. To initialize the SRAM, a logic '1' must be written to the INITREQ bit within the PRAMCR register of the SRAMC and SRAMC_1 peripherals.   Procedure With a project open in project explorer (C/C++ perspective), switch to DCD perspective. Click on the arrow next to the 'Open S32 Configuration' button and select 'Open DCD'. Check that correct project is selected  In DCD Commands panel, select Command Type 'Write', then click 'Set' Click 'Add Register', then set the following settings. Can start typing the names to filter the list for faster setting selection.   For Peripheral setting, select 'SRAMC'. You can search for it by typing the name. Register setting, select 'PRAMCR'. The list is short, so it is not necessary to type the name. In Bitfields, select 'INITREQ' Now click on the highlighted bit to set it. Again using 'New Command' box, repeat settings of steps 3 & 4, however, this time select Peripheral 'SRAMC_1'. If everything was done correctly, in the DCD Binary panel to the right, should appear as shown. If so, click 'Export'. The generated DCD file will be displayed. By default, C format is selected. Select Binary format and click OK. Select a location to save the file (such as the project folder in the workspace directory) and give it a meaningful name. Click Save. You are done! DCD image file is created in binary format and ready to be imported to IVT Tool.  
記事全体を表示
Online update In standard situation update can be started by clicking on message box appeared after S32DS Launch: If you don't see such message - you can check for updates/update your S32DS Installation manually. On main menu bar click on Help -> S32DS Extensions and Updates  Select from available items, then click "Install/Update" button  Offline update   Download update package from Updated/Patches (for S32DS 3.x - S32 Design Studio | NXP , for ARM S32DS - S32 Design Studio IDE for Arm® based MCUs|NXP, for Power Architecture S32DS - S32 Design Studio IDE for Power Architecture based MCUs | NXP ). Click on Help -> S32DS Extensions and Updates and choose Go to Preferences.   Click Add... Click Archive... and locate the zip file you downloaded and click OK Select the packages and updates then start the installation with the Install/Update button. 
記事全体を表示
This simple example shows how to attach GPIO Interrupt handler to particular GPIO Pin. Example is for S32K148 EVB and uses SW4 connected to PTC 13 and Green LED connected to PTE 22. Pressing SW4 invoke interrupt and Interrupt handler toggles Green LED. 
記事全体を表示
        Product Release Announcement Automotive Microcontrollers and Processors S32 Design Studio for Power v1.2             S32 Design Studio for Power v1.2 (Windows/Linux) has been released. This is a complete installer which does not require any previous version to be installed. To download the installer please visit download section: www.nxp.com/s32ds What is new? New devices: • MPC5632M, MPC5633M, MPC5634M • MPC5642A • MPC5674F • MPC5673K, MPC5674K, MPC5675K • S32R372 New features: • Compiler update – see details in compiler release notes attached below • View for the Special Purpose Registers added • Improvements for Peripherals Register view • Added support for Semihosting/Debug console for single core devices • RESET functionality added, the hardware reset2 is executed for main/boot core and individual core reset for secondary cores. • Improvements for SPT diagram to display instruction labels and key parameters • SDK mechanism improvements to support SDK per build configuration • FreeMaster Serial Communication driver 2.0 integrated • iSystem debugger support added to New Project Wizard • SPT assembler update • Updated P&E debug plugins and drivers to the latest and greatest versions Note: The plugins to support GreenHills, IAR, iSystem, Lauterbach are not included and have to be installed from corresponding update site or installation. S32DS release notes are available here. GCC Build tools release notes are here.   Installation Notes The installer requires NEW Activation ID to be entered during the installation. You should receive an email including the Activation ID after starting the download process e.g:    
記事全体を表示
Building Projects There is already a significant amount of information already available on this topic. Please explore the external references listed below for detailed information. External References Building Projects with Eclipse Build Several CDT C++ projects from command line With the following command line, it is possible to build the project KEA128: eclipsec -nosplash -application org.eclipse.cdt.managedbuilder.core.headlessbuild -data C:\Users\username\workspaceS32DS.ARM2.0 -build KEA128/Release   The project was located in workspace - C:\Users\username\workspaceS32DS.ARM2.0 Project Name is: KEA128 Build Configuration is: Release Emitting Source Code S32 Design Studio for Vision Emitting the source code from the command line: There are 2 sections in the Reference Manual, one for each of the ISP and APEX2 Visual Graph Tools. Processor Expert Software - S32 Design Studio There is a section in the Processor Expert User Guide titled 'Command Line Interface'
記事全体を表示
If your EVB with OpenSDA debugger can't start debug session - you can try to update OpenSDA firmware on your board.  Go to PE Micro web pages - http://www.pemicro.com/opensda/ and get the latest firmware archive.  Extract .SDA file related to your EVB - for example            DEBUG-OPENSDA-E200_Pemicro_v110.SDA for DEVKIT-MPC5748G            MSD-DEBUG-EVB-S32K144_Pemicro_v119.SDA for S32K144EVB  Press and hold SW3 (Reset for S32K144EVB) button and connect OpenSDA connector on EVB to PC. New BOOTLOADER Drive should appear on your PC.  Copy .SDA file in BOOTLOADER drive Reset EVB.   More details you can find in "Updating the OpenSDA Firmware.pdf" file. It is part of downloaded zip file from PE Micro web pages. 
記事全体を表示
Example introduction: After startup - uninitialized RAM is set to 0 by startup code (startup_S32K144.S). If you need access to data stored in the RAM after reset is performed, you can  add these variables into .noinit section. You need to update your linker file and add .noinit section aligned to 1024 bytes before _RAM_START is defined:  In code assign your variable into .noinit section:  Example usage:  Import attached example into S32DS for ARM, build in and start debug session. Resume target and suspend program execution:  In semihosting debug console you can see that noinit_data are set to 0. The board is in state after power ON: Reset board and let's check if data remains in RAM memory:  After resume, you can see in semihosting console (or expressions view), that data remains unchanged:
記事全体を表示
S32DS ARM2.2 K144xx fPic Example description. Provided example demonstrate possibility of creation Position Independent Code using  standard  S32DS ARM 2.2 tools.  Example code blink RGB LED using svc interrupt handler. Output  picExample.bin should be loaded via restore gdb command only into existing K144 RAM area(0x1fff8000 – 20007000 for EVB board), then pc set to startup value.(see picExample_Debug_RAM_PNE_fpic  Debug configuration). Note: restore gdb command needs absolute path to *.bin file. Example is based on standard K144 application. Changes: -fPIC option should be set(Project->Properties->C/C++ Build ->Settings->Standard S32DS Compiler->Miscalenous->Position Independent Code). Create flash image checkbox should bes set.( Project->Properties->Cross Settings -> Create flash image). Flash Image output file format  should be set to Raw binary(Project->Properties->C/C++ Build ->Settings->Standard S32DS Create Flash Image ) Add -nostdlib linker option(Project->Properties->C/C++ Build ->Settings->Standard S32DS Linker->General ->No startup or default libs). Existing S was modified(stack pointer was corrected, bl instead of blx for function calls was used. Standard linker script was modified(see example) Interrupts vector table was moved to data area. Due to this vector addresses are corrected on startup by FixGot routine(see SystemInit()c) Common RAM area was declared starting from 0. __got_start and __got_end were declared in Global Offset Table   For an in-depth analysis and step-by-step guide on the topic of implementing position-independent code, please see the following blog at mcuoneclipse.com: Position-Independent Code With GCC for arm Cortex M 
記事全体を表示
Getting started with APEX2 S32DS: Getting Started - APEX2 Graph Tool Tutorial  Getting started with ISP S32DS: Getting Started - ISP Graph Tool Tutorial 
記事全体を表示
To install updates and additional packages to S32 Design Studio: 1) Download the Update from the S32 Design Studio page at NXP.com. 2) From S32 Design Studio, got to Help – S32DS Extensions and Updates. 3) Click on ‘Manage Sites’ link. 4) Select 'Add...' 5) Select 'Archive...', locate the downloaded update: 6) Click OK. 7) Click Apply and Close on the Preferences menu 😎 Notice the S32DS Extensions and Updates menu displays the new content. 9) Check the box next to the new package and click Install/Update. 10) Accept license terms and click Finish. 11) After the installation is complete, restart S32 Design Studio.
記事全体を表示
Hello,   The first official release of S32DS for Power Architecture is available in the download section of S32DS web page: http://www.nxp.com/s32ds S32 Design Studio is based on Eclipse open development platform and integrates the Eclipse IDE, GNU Compiler Collection (GCC), GNU Debugger (GDB), and other open-source software. This release supports Windows 7/8/8.1 (32/64 bit), version for Linux will be released later on.   S32DS Power Architecture v1.0 main features Free of charge tool with no code size limitation (no license file required) Eclipse Luna 4.4 Framework GNU Tools for e200 processors build tools (support VLE ISA only, based on gcc 4.9.2, binutils 2.24 and gdb 7.8) Libraries included: newlib, newlib-nano and Freescale EWL2 P&E Multilink (with P&E GDB Server) New Project wizard to create application and library projects for supported devices Peripherals Register View   Devices supported MPC56xx MPC5601P, MPC5602P, MPC5603P, MPC5604P MPC5644B, MPC5644C, MPC5645B, MPC5645C, MPC5646B, MPC5646C MPC5601D, MPC5602B, MPC5602C, MPC5602D, MPC5603B, MPC5603C, MPC5604B, MPC5604C, MPC5605B, MPC5606B, MPC5607B MPC5606S MPC57xx MPC5775K, MPC5774K MPC5746R, MPC5745R, MPC5743R MPC5777M MPC5777C MPC5748G, MPC5747G, MPC5746G MPC5746C, MPC5745C, MPC5746D, MPC5746B, MPC5745D, MPC5745B MPC5744P, MPC5743P, MPC5742P, MPC5741P   Technical Support S32 Design Studio is supported by NXP community - https://community.freescale.com/community/s32/s32ds/ For more details see the attached release notes.   Regards, Stanislav
記事全体を表示
IVT - short for Image Vector Table, is an image with a set of pointers to other images which are required at boot by the embedded BootROM. This video will explain using S32V chip how IVT tool works and covers create and flash SDK's PIT example.
記事全体を表示
The Image Vector Table (IVT) image is a set of pointers to other images which are required by the BootROM. It typically contains the following images, though not all are required to create a valid IVT image: DCD Self-Test DCD HSE Application Bootloader The IVT Tool enables configuration and generation of the IVT image as specified in the BootROM reference manual. Prerequisites Before using the IVT Tool, it will be useful to have already generated the binary image from your application project, it will be an input to the IVT. It may also be necessary to include a DCD image, for example, to initialize the SRAM. For application bootloader image, follow the steps in HOWTO: Generate S-Record/Intel HEX/Binary file, selecting 'Raw binary' option. For DCD image, follow the steps in HOWTO: Use DCD Tool To Create A Device Configuration Data Image . Procedure With desired project open in project explorer (C/C++ perspective), switch to IVT perspective. Click on 'Open IVT'. In the Boot Configuration section, check that the correct Boot Target is selected. For the demonstration here, M7_0 is the correct selection. Check the 'Interface selection' section. If your intended boot device is SD, MMC or eMMC, then change the setting from QuadSPI Serial Flash. If your intended boot device is QuadSPI AND you do not have a QuadSPI parameter file to specify, then uncheck the box for 'Configure QuadSPI parameters'. QuadSPI parameters change some flash registers' settings away from the default setting and are generally required for larger memory sizes (for ex. applications over 1 MB in size, for some supported devices). From the Image Table section, depending on your configuration, turn off all unused images. For the demonstration here, the following will be changed to Reserved: Self-Test DCD, Self-Test DCD (backup), DCD (backup), Application bootloader (backup). The following images will remain enabled: DCD, Application bootloader. In DCD section of the Image Table, click 'Browse File' and select the DCD binary file. Some of the fields may become red shaded after the file is loaded. This is OK as it is showing the memory layout is no longer aligned. This will be resolved in a later step.  Scroll down to the Application bootloader section, again use  'Browse File' and select the application binary. When the application boot image is loaded, the tool processes the file to check if it contains the header for the application bootloader image. If the header is not found, it means that the file is only the raw code (the bin generated by S32 Design Studio) and it will be necessary to provide the values for RAM start & entry addresses (code length is automatically calculated), as noted with the expanded view and red shading. To set the RAM start pointer and entry pointer addresses, from to the C/C++ perspective: From Project Explorer on the C/C++ perspective, open the linker file (in this case: hello_world\Project_Settings\Linker_Files\<device_name>_common_ram.ld) and locate the RAM start address and enter it in both the RAM start pointer AND RAM entry pointer fields in the IVT Tool. Use copy and paste to add the values to the Application Boot Image settings. Since the application binary file which was loaded for this example is just a raw binary file, it is necessary to generate the full application bootloader image. The Export Image function takes the values entered for the RAM start & entry pointers and the automatically calculated Code length, then generates the Application bootloader header. This header is added to the raw binary file producing a new image, the full application bootloader image file. Within the Application bootloader section, click 'Export Image' and enter a meaningful name for the image file. In addition to being a necessary source component of the IVT image, this file can more easily be shared or re-used to as an input to other IVT images. After the file has been generated, you will notice that the address settings section has collapsed. This is because it has replaced the file you originally selected with the newly generated one and the tool has recognized that the file contains the required header information. Before the Blob image can be generated, all of the images must be properly aligned within the memory map. You will likely also see error messages regarding segment overlaps, but even without this error it is good to check that the alignment is correct. In the Automatic Align section, if you have a dedicated area of the memory you can specify the start address and then click 'Align'. If you don't have a dedicated area, then use the default automatic align start address of 0x0 (QSPI), or 0x1000 (SD, MMC, eMMC). Click 'Align' to automatically align the images to this address. Upon successful completion of the alignment, all of the red shading will be removed. Click 'Export Blob Image' to generate the blob image file. This is what will be flashed to the target. Now that the Blob Image is generated, the 'Flash Image' button could be used to program the image to the target over serial connection, or use the S32 Flash Tool.
記事全体を表示