ARM Technical Support Knowledge Articles

How do I use a Core Tile on an IM-LT3?

Applies to: Integrator, Versatile Core Tiles


[New 10 August 2006]

You can build a system with an ARM1136JF-S, ARM926EJ-S or ARM7TDMI Core Tile connected to an IM-LT3 Interface Module. Since the IM-LT3 flash memory can only hold two FPGA images, you must use our 'progcards' utilities to load a suitable FPGA image into the IM-LT3 before you use it. Here are the steps to get you started:


  1. You will need a RealView ICE (RVI) or Multi-ICE to program the IM-LT3 flash. A Xilinx programmer is not suitable because the design will be lost every time the boards are reset. Note that you cannot use Multi-ICE to debug the ARM1136JF-S.

    • RVI must have firmware v1.4.1 or later, which you can download here. The RVI unit comes with a 5V DC power supply - DO NOT use anything else or you will damage the RVI. You can connect RVI to your PC with an Ethernet or USB cable. Connect the 5V DC supply to RVI and wait for the front panel LEDs to stop flashing. You can use the RealView ICE Config IP program to detect whether your RVI is visible on the network. You can use the RealView ICE Update program to check the firmware version.

    • Multi-ICE needs the Multi-ICE Server application that comes on its CD. The latest version of Multi-ICE Server is v2.2, you will also need the v2.2.6 patch from here. You need at least v2.2.4 to debug the ARM7TDMI (the test chip has a rev 4 core), and at least v2.2 to debug ARM926EJ-S. Upgrades to v2.2 from earlier versions are chargeable so please contact your local sales office for details. Multi-ICE is connected to your PC's parallel port with the supplied parallel cable. Note that it must be a motherboard parallel port.

  2. Download the latest version of application note 138 from our website here. It includes three different IM-LT3 FPGA images for the three different Core Tiles supported. Unzip the files - a directory called 'AN138' will be created.

  3. Download the latest version of the progcards utility from here. Unzip the files into the AN138oardfiles directory from step 2.

  4. Disconnect the power source from the IM-LT3. This prevents power being accidentally applied to the boards while they are being assembled.

  5. To assemble the boards, fit the Core Tile on top of the IM-LT3, then apply firm hand pressure to ensure the Core Tile and IM-LT3 connectors mate fully.

  6. You will need a power supply with +3.3V and +5V outputs that can be turned on and off simultaneously. Check the voltage levels are correct, then connect the wires to the IM-LT3 screw terminals J9.

  7. On the IM-LT3 fit the CONFIG jumper to header J14 (this is a switch on the lead-free version) next to the JTAG ICE connector. You must fit the CONFIG jumper before applying power so that the current FPGA image in flash is not loaded - if it was erroneous it could damage the board(s). Accidental damage to the boards is not covered by the warranty.

  8. The boardfiles will load the FPGA image into flash at address 0x0. Set the IM-LT3 DIP switches S4 to both be OFF, so that this image is loaded into the FPGA at power-up.

  9. Connect the RVI or Multi-ICE to the IM-LT3 board.

  10. Apply power to the IM-LT3. On the IM-LT3 the green '3V3' and orange 'CFGEN' LEDs should be lit. On the Core Tile the green 'POWER' LED should be lit.

  11. Open a Command Prompt (MS-DOS) window and change directory to the AN138oardfiles directory.

  12. If you have RVI connected then run progcards_rvi.exe from the command line. Progcards will detect which RVI units are available and prompt you to select one.

  13. If you have Multi-ICE connected, run the Multi-ICE Server application then select File -> Auto-Configure. It should find several devices in the JTAG scan chain, including the ARM core. If you do not have the Multi-ICE Server 2.2.6 patch installed you may have to add extra entries to your irlength.arm file so that Multi-ICE can properly identify all the devices, see the irlength_arm.txt file in the boardfiles directory. Now run progcards_multiice.exe from the command line.

  14. Progcards should identify your system. It will prompt you to select an option to program, then it should start programming. There are three steps: (1) load a flash programmer file ('via' file) into the FPGA so that progcards can write into the FPGA's configuration flash; (2) program the flash; (3) verify the flash. This will take a few minutes. When it is finished progcards should display "Programming Successful."

  15. Remove the CONFIG jumper and turn off the power.

  16. Turn power on. Almost instantly you should see the IM-LT3 'DONE' LED light (means the FPGA has a valid configuration). Ignore IM-LT3 LEDs D12 to D18 - they are displaying undocumented boards debug information, selected by IM-LT3 DIP switch S3[2:1].

  17. Now auto-configure to detect the ARM core:

    • If you have RVI and RealView Development Suite (RVDS) 3.0 then run RealView Debugger (RVD). In RVD, select Target -> Connect to Target. In the Connection Control window that pops up select RealView-ICE, right click and select Configure. In the RVConfig window that pops up, select your RVI from the list, click on Connect, then click on Auto Configure Scan Chain. Select File -> Save then File -> Exit.

    • If you have Multi-ICE, auto-configure Multi-ICE Server again and it should only see the ARM core. Note that Multi-ICE does not support the ARM1136JF-S core for software debug.

  18. Connect your debugger to the ARM core:

    • For RVI and RVDS 3.0 - in the RVD Connection Control window double-click on RealView-ICE then double click on the ARM core underneath it.

    • For Multi-ICE and RVDS 3.0 - in RVD select Target -> Connect to Target, in the Connection Control window that pops up, double-click on Multi-ICE, then double-click on the ARM core underneath it.

Article last edited on: 2009-01-20 11:52:11

Rate this article

Disagree? Move your mouse over the bar and click

Did you find this article helpful? Yes No

How can we improve this article?

Link to this article
Copyright © 2011 ARM Limited. All rights reserved. External (Open), Non-Confidential