Académique Documents
Professionnel Documents
Culture Documents
V4.2
4FM
Getting Started Guide Microsoft Windows
4DSP LLC Email: support@4dsp.com This document is the property of 4DSP LLC and may not be copied nor communicated to a third party without the written permission of 4DSP LLC. 4DSP Inc. 2006-2012
V4.2
Table of Contents
1 2 Introduction ......................................................................................................................... 5 Requirements and handling instructions ............................................................................... 6 2.1 2.2 2.3 2.4 2.5 3 4 Hardware requirements and handling instructions ................................................................ 6 Software requirements ........................................................................................................... 6 Software requirements (Visual Studio 2008 SP1) ................................................................... 7 Software requirements (Modelsim Xilinx Simulation Library) ............................................. 8 Software requirements (Modelsim Various Configuration) ................................................. 9
Software Installation .......................................................................................................... 10 Development kit components description ........................................................................... 11 4.1 Software Overview ................................................................................................................ 11 PCI/PCI Express installation ........................................................................................... 11 Ethernet installation ...................................................................................................... 12 4.1.1 4.1.2 4.2 4.4 4.5 4.6 4.7 4.8
StellarIP overview .................................................................................................................. 13 Firmware overview ................................................................................................................ 15 Documentation...................................................................................................................... 16 4FM Firmware (Design Files) ................................................................................................. 16 4FM Firmware (Recovery Files) ............................................................................................. 16 4DSP Drivers .......................................................................................................................... 17 4FM PCI/PCI(e) driver .................................................................................................... 17 4DSPNET NDIS Protocol driver ...................................................................................... 17 4FM (PCI API) ................................................................................................................. 18 ETHAPI API (Ethernet API) ............................................................................................. 18 4FM Diagnostics/Information plug-in (PCI/PCIe hardware) ......................................... 20 4FM Registers/Update plug-in (PCI/PCIe hardware) .................................................... 22 4FM Memory Test plug-ins (PCI/PCIe hardware) ......................................................... 24 4FM Firmware Installer Plug-in .................................................................................... 25
4.8.1 4.8.2 4.9 4.9.1 4.9.2 4.10 4.10.1 4.10.2 4.10.3 4.10.4 5 5.1
StellarIP ............................................................................................................................. 26 Firmware project creation..................................................................................................... 26 StellarIP plug-in configuration ....................................................................................... 27 Launch StellarIP ............................................................................................................. 27 Examine StellarIP results ............................................................................................... 28 5.1.1 5.1.2 5.1.3
April 2012
-2-
V4.2
5.2 5.3 5.4 6 6.1 6.2 6.3 6.4 6.5 6.6 6.7 6.8
Simulating StellarIP results .................................................................................................... 29 Modifying simulation behaviour ........................................................................................... 30 Open and compile the project in Xilinx ISE ........................................................................... 31 Preparation ............................................................................................................................ 33 Adding a custom star ............................................................................................................. 34 Configuring the custom star .................................................................................................. 35 Generate support code for the custom star ......................................................................... 36 Incorporating our new star into the definition file ............................................................... 37 Compile the new design ........................................................................................................ 38 Verifying our modifications ................................................................................................... 38 Uploading a firmware (PCI/PCIe hardware) ......................................................................... 38 Convert the .bit file into a .hex file (bit2hex) ................................................................ 38 Convert the .bit file into a .hex file (shell extension) .................................................... 38 Upload the firmware into hardware ............................................................................. 39
6.8.1 6.8.2 6.8.3 6.9 6.10 7 7.1 7.2 7.3 7.4 8 8.1 8.2 9 9.1
Test the firmware using StellarIPs Script Parser (PCI/PCIe hardware) ................................ 39 Test the firmware using training materials reference application ....................................... 41 Step 1 ..................................................................................................................................... 42 Step 2 ..................................................................................................................................... 44 Step 3 ..................................................................................................................................... 46 Step 4 ..................................................................................................................................... 46 Documentation...................................................................................................................... 49 Reference Firmware Matrix .................................................................................................. 49 Quick start ............................................................................................................................. 51 Prepare the host computer ........................................................................................... 52 Prepare and connect ML605 to the host computer ...................................................... 53 Programming ML605 FPGA device (Virtex 6 LX240T) ................................................... 53 Programming ML605 Flash device (Optional) ............................................................... 53 Verify FPGA firmware initialization ............................................................................... 54 Check which virtual COM (UART) port is featured by the device driver ....................... 55 Description of the FMC645 Test Peripheral Application ............................................... 56 Executing the FMC645 Test Peripheral Application ...................................................... 56
4FM Get Started Guide www.4dsp.com
Evaluating FMC AD/DA product using Xilinx Development kits (ML605, SP601, SP605) ......... 47
Evaluating FMC DSP product using Xilinx Development kits (ML605) ................................... 51 9.1.1 9.1.2 9.1.3 9.1.4 9.1.5 9.1.6 9.1.7 9.1.8
April 2012
-3-
V4.2
Annex 1 Manual Firmware Installation ............................................................................. 58 Select a input firmware package file ..................................................................................... 59 Select an output folder .......................................................................................................... 60 Install the firmware ............................................................................................................... 61 In case of trouble ................................................................................................................... 62 Introduction........................................................................................................................... 63 License format ....................................................................................................................... 64 The NOTICE= field .......................................................................................................... 64 The HOSTID= field.......................................................................................................... 64 The EXPIRY= field ........................................................................................................... 64
Annex 3 - Compiling the 4FM Core Example ........................................................................ 65 SDK Integration in Visual Studio 2008 ................................................................................... 65 Compiling............................................................................................................................... 65 4FF content............................................................................................................................ 66 4FF content (Hierarchical view)............................................................................................. 67
April 2012
-4-
V4.2
1 Introduction
The 4FM Getting Started Guide describes the steps that a user must perform in order to use the 4FM V2.0 development kit. Windows 7 is required in order to install/use the development kit. The BSP is not tested by 4DSP under Windows 2000 and Windows XP anymore as most of our customers are already using Windows 7. The 4FM SDK is a set of tools and interfaces, and its main purpose is communicating with the various hardware manufactured by 4DSP. Additionally, Xilinx firmware projects can be created from the 4DSP firmware packages using the StellarIP software. The 4FM SDK also includes support for the FMC product line and a specific chapter is dedicated to its description
April 2012
-5-
V4.2
April 2012
-6-
V4.2
April 2012
-7-
V4.2
April 2012
-8-
V4.2
April 2012
-9-
V4.2
3 Software Installation
Insert the 4FM CD in a CD/DVD drive. Go to this drive via Windows explorer and double-click the setup.exe file and follow the on-screen setup instructions. You might have received the BSP electronically, in this case browse do your downloaded files.
Note: If the installation does not complete properly, make sure to right click the setup.exe and choose Start as Administrator. This might be required as the installer installs a driver and redistributables which require elevated administrator rights. You will be asked to browse for a license file during the installation. The license file should have been sent to you on the installation disk or separately in an email. It is not possible to continue without a license file. 4DSP device drivers for PCI (PMC/XMC) and Ethernet are digitally signed and can be installed and loaded on both 32 and 64 bit Windows 7 variants.
April 2012
- 10 -
V4.2
After installing the BSP with a license file for a PCI/PCI Express product the following components will be installed. PCI bus is available for most 4DSP hardware as well as the ML605 which is sold by Xilinx.
April 2012
- 11 -
V4.2
4.1.2
Ethernet installation
After installing the BSP with a license file for an Ethernet product the following components will be installed. The Ethernet interface is mainly used by Xilinx hardware as the ML605, the SP601 and the SP605. 4DSPs FC6301 CompactPCI hardware is also able to take advantage of the Ethernet interface.
Firmware Decryption
1Gbps Ethernet
Figure 5 : Components for an Ethernet installation
April 2012
- 12 -
V4.2
While working with stellar IP it is important to remember the following terminology: Star Wormhole Constellation A functional block with a specific task. A connection between two stars. A wormhole comprises of one or more signals in either one or both directions. A collection of stars that forms the top level of a firmware design.
StellarIP does not speak HDL or C, but speaks SDL: the Stellar Description Language. Using a Stellar Definition File, a Wormhole Library, and a Star Library, StellarIP is able to create a project for both the command line and graphical Xilinx ISE tools. In other words, a Stellar Definition File defines a constellation, which is the top level of a firmware. A constellation is made of stars (functional blocks provided by 4DSP and/or created by the user). The stars are interconnected using wormholes. Wormholes are generic communication interfaces defined by 4DSP and/or the user. The StellarIP plug-in depicted in figure 8 takes the user input and calls the StellarIP tools. 4DSPs website describes a little more what StellarIP is and this information can be obtained on the page: FPGA Development Tool (Stellar IP) | 4DSP, LLC. For more detailed information, please refer to the StellarIP users manual. This BSP also includes a beta schematic design entry for StellarIP allowing the reader of creating a complete constellation graphically, connecting blocks between each other easily. The schematic design entry creates the Stellar Definition File which can be further processed by StellarIP tools.
April 2012
- 13 -
V4.2
StellarIP is divided in three distinct tabs in the 4FM GUI Control Application. These tabs are illustrated below. The wormhole editor provides the user with a way of creating or modifying wormholes in the star library. The star editor provides the user with a way of creating or modifying stars in the star library The core StellarIP provides the user with a way of converting a StellarIP firmware into a Xilinx ISE project file.
April 2012
- 14 -
V4.2
Constellation Description
Constellation Documentation
Ethernet/PCIe hardware
Figure 9 : Firmware compilation chain
April 2012
- 15 -
V4.2
4.5 Documentation
Various documentations such as User Guides are installed by the SDK installer. These documents can be found at the following paths: C:\Program Files\4dsp\4FM Core Development Kit\Documentation - 32 bit system. C:\Program Files (x86)\4dsp\4FM Core Development Kit\Documentation 64 bit system. Additionally, documentation for the FMC product line can be found at the following paths: C:\Program Files\4dsp\FMC Board Support Package\Documentation - 32 bit system. C:\Program Files (x86)\4dsp\ FMC Board Support Package\Documentation 64 bit system.
4FM Firmware
and Annex 4 - Firmware .4FF file for more information about the firmware packages.
Note: if the firmware was not decrypted automatically by the installer, one can try extracting the
firmware manually. Please refer to Annex 1 Manual Firmware Installation for more information
April 2012
- 16 -
V4.2
It is a well-optimized kernel mode driver. An API is available to communicate with the device driver from the user application space. The device driver is automatically installed by the SDK installer. The driver can be installed manually in the case you would need to transfer the driver to a target system. The driver files are located at the following paths (after a default installation): C:\Program Files\4dsp\4FM Core Development Kit\Driver - 32 bit system. C:\Program Files (x86)\4dsp\4FM Core Development Kit\Driver - 64 bit system. 4.8.2 4DSPNET NDIS Protocol driver
It is a driver implementing a minimalistic protocol over Ethernet. Minimalistic because there is no specific handshaking or data recovery implement as compared to TCP/IP for instance. The device driver is automatically installed by the SDK installer. The driver can be installed manually in the case you would need to transfer the driver to a target system. The driver files are located at the following paths (after a default installation): C:\Program Files\4dsp\FMC Board Support Package \Driver - 32 bit system. C:\Program Files (x86)\4dsp\ FMC Board Support Package\Driver - 64 bit system.
April 2012
- 17 -
V4.2
The API communicates with the hardware device through the 4FM device driver installed by the SDK. The API provides all the C functions one might want to call from his application. This API is meant to communicate with 4DSPs PCI or PCIe devices. The available functions allow obtaining diagnostics, reading/writing firmware registers and receiving/sending data using direct memory access (DMA) operations.
Note :
More information about the 4FM API can be found in the 4FM Programmers Guide PDF
document. Please consult this document for a detailed description. 4.9.2 ETHAPI API (Ethernet API)
The API communicates with the Windows NDIS layer and communicates with the NDIS Ethernet protocol driver. The protocol is minimalistic; no data recovery or integrity checks are implemented. The available functions allow reading/writing firmware registers and receiving/sending data through the Ethernet interface.
Note : More information about the ETHAPI API can be found in the doxyethapi CHM document.
Please consult this document for a detailed description.
April 2012
- 18 -
V4.2
The first area contains the independent controls for the plug-ins. For instance, a user can choose which device (FM489, FM680, FC6301, VP680, ) to control. Additionally, one can send a reset command to the hardware device. Note that devices communicating over Ethernet as the ML605 cannot be controlled by this software. The second area shows all the plug-ins loaded by the graphical user interface. Figure 10 shows the 4FM GUI Control application with the StellarIP plug-in loaded and active. The third area is called the debug area and displays various debug messages sent by the plug-ins. Typically StellarIP displays crucial information on this area which can be very useful to diagnose malformed StellarIP descriptions.
April 2012
- 19 -
V4.2
The fourth area has the status area and displays current graphical user interface status. Note the magnifying glass icon. Pressing this button opens an extended debug view which is useful for checking the debug logs. An extended debug view is available. The extended debug view can be opened using the magnifying glass button in the user interface. This window can be resized as desired and is actually a way to read important amount of text displayed in the Debug Area.
4.10.1 4FM Diagnostics/Information plug-in (PCI/PCIe hardware) The following image shows the diagnostics/information plug-in. This plug-in gives the user a quick overview of the hardware and software status. Below you will find a short description of the different status fields.
Software information: Graphical User Interface engine version (4FM Control Version) Application Programming Interface version (4FM API Version) Device driver version (4FM Driver Version)
April 2012
- 20 -
V4.2
Board information: FPGA A firmware revision (FPGA A Revision) is the firmware version currently loaded in FPGA A. FPGA A PCI revision is the version of the PCI interface module also in FPGA A. FPGA A firmware I.D. is an identification number in FPGA A firmware. FPGA B device type is the FPGA type for FPGA B. FPGA B revision is the version string for the firmware currently active in FPGA B. FPGA B firmware I.D. is an identification number in FPGA B firmware. CPLD revision is the CPLD firmwares version. Serial Number is the board serial number programmed by the factory before the board is shipped to a customer.
Board diagnostics: Voltage readings of the different power rails. FPGA A temperature and FPGA B temperature for 4DSP hardware with two FPGAs. FPGA temperatures graph.
Note: Devices communicating over Ethernet as the ML605 are not supported by this plug-in!
April 2012
- 21 -
V4.2
4.10.2 4FM Registers/Update plug-in (PCI/PCIe hardware) This plug-in allows basic interaction with the hardware as well as loading new FPGA configurations to the onboard flash. For some boards it is possible to directly upload a new configuration to the FPGA B device.
Clock Tree Settings: This area allows displaying frequencies from the clock tree. Changing the Selection combo box control will make the plug-in display the current frequency for the selected clock. Additionally, the frequency synthesizer parameters can be changed in order to change the onboard clock synthesizer frequency. Timeout: This area allows modification of the default DMA timeout value. The value has to be entered in milliseconds. The Once Timeout sets a timeout value (in milliseconds) for the next operation only. Registers: Reading and writing Custom Registers (Only available on FM48x hardware series). Reading and writing the 32bit wide User ROM non-volatile value.
4FM Get Started Guide www.4dsp.com
April 2012
- 22 -
V4.2
Reading and writing Stellar IP registers. The text field on the left represent an address and the text field on the right side represent the actual value. A stellarIP register is 32bit wide and actually transfer value to a specific address in the firmware register space.
FPGA A/B Firmware Update: This area allows programming firmware into the 4DSP hardware, either to FPGA A or FPGA B. Browsing to a .hex (or .pof in case of Altera hardware) file and pressing the Load button are the only steps required to upload a firmware into the hardware. The Write Flash checkbox control tells the plug-in to program the selected firmware into the FLASH memory instead of only programming the FPGA. A power cycle is required after programming the flash in order to load the new configuration into the FPGA. Directly programming the FPGA (with the check box control left unchecked) does not require a power cycle. The new Firmware is ready after programming. This type of programming is volatile which means the uploaded firmware will not persist with a power cycle.
Note 1: Direct FPGA B (to FPGA device) update/upload is not supported by default on FM680
devices. Only FM680 board with a CPLD version 1.3 and above can be directly be updated from the software. FPGA B update/upload is not supported for VP680 and FC6301 devices.
Note 2: Devices communicating over Ethernet as the ML605 are not supported by this plug-in!
April 2012
- 23 -
V4.2
4.10.3 4FM Memory Test plug-ins (PCI/PCIe hardware) There are several plug-ins to test the BLAST memory on our boards. Three plug-ins are available (DDR2, DDR3 and QDR2 tests) and the correct plug-in is loaded for a given hardware. If you have a board with both DDR2 and QDR2 BLASTs, then two plug-ins will be loaded in the graphical user interface. All three plug-ins have the same interface.
Test Settings: This area allows configuration of the operating frequency and the number of loops for the test. Typically the reference firmware allows the memory test to run with a base frequency of 130 MHz. DMA Transfer Speed: This area displays the direct memory access speed for the last test. Read (from hardware to host), write (from host to hardware) and average are displayed by the user interface. The verify check box control need to be unchecked in order to obtain DMA transfer speed information.
Note 1: DDR3 memory banks actually operate at twice the synthesizer frequency. Setting the clock
synthesizer to 200MHz in the DDR3 memory test plug-in causes the DDR3 to be clocked at 400MHz.
Note 2: Devices communicating over Ethernet as the ML605 are not supported by this plug-in!
4FM Get Started Guide www.4dsp.com
April 2012
- 24 -
V4.2
4.10.4
This plug-in does not require any hardware be attached to the computer. The firmware packages are shipped as an encrypted firmware file, and this plug-in allows retrieving firmware sources from one of the available firmware packs. It is normally not required to decrypt the firmware manually unless you have received a dedicated firmware package from 4DSP. The installer automatically decrypts and extracts the firmware you are entitled to during the installation process. Please refer to 4FM Firmware for more information about this. This plug-in comes with a firmware package where you can find all the general firmwares. A general firmware is a firmware part of the standard board support package. The firmwares are reference designs that allow access to the different peripherals attached to the FPGAs on the PCB. The database also includes the recovery files which are ready to be uploaded to the hardware. If you have received a demo license, you will not be able to obtain firmware sources. In this case you can only access the recovery files.
April 2012
- 25 -
V4.2
5 StellarIP
This chapter describes the first steps taken when using StellarIP. It is a step by step instruction on how to use StellarIP. Each paragraph is dedicated to a specific task and they should be taken in the correct order. This chapter uses some pre created designs installed along with the 4DSP development kit. These design are call training materials and are described in the Training material description chapter. Two StellarIP training projects are installed with StellarIP and are available for all the hardware sold by 4DSP. And one training material is available for the ML605 only.
Note 1 : The training materials are sorted by interface type (Ethernet or PCI). Note 2: Never upload a firmware not targeting your specific hardware! 5.1 Firmware project creation
The purpose of this paragraph is to describe the steps required to create a firmware project that can be compiled using the Xilinx ISE utilities. We will use the trainmaterial_step1 StellarIP project to generate the Xilinx project file as well as simulate the design using Modelsim.
Note:
Material\Firmware and children have been copied to a local folder. This chapter will use {path} representing the actual path you have been copying the folder into. For example, if you have copied C:\Program Files\4dsp\4FM Core Development Kit\StellarIP\Training Material\Firmware to C:\, {path} is then C:\. Make sure you have read/write access to the target folder as the tools expects complete read/write/modify access policy on this folder.
April 2012
- 26 -
V4.2
5.1.1
First of all browse for a Stellar IP Definition File. In this case the trainmaterial_step1 StellarIP definition file found here: {path}\{interface}\Step 1\{projectname}\implement\{sdfname}.sdf StellarIP will automatically update the library path text field unless the User Defined check box is checked . Make sure the following options are NOT checked: Compile Project using Xilinx XST. Having this control checked makes StellarIP invoke the Xilinx command line tools to compile the firmware without any action from the user. Generate .hex files from XST results. Having this control checked makes StellarIP generate a programming file (.hex) ready to be uploaded into the 4DSP hardware.
Note : At the time of writing, the training material firmware are available for FM680, FC6301 and
VP680 4DSP hardware as well as the Xilinxs ML605. Substitute {projectname} and {sdfname} in the path above with the actual names for the hardware you have purchased from 4DSP or Xilinx. 5.1.2 Launch StellarIP
This is as straightforward as pressing the Generate button and wait for it to finish.
April 2012
- 27 -
V4.2
5.1.3
StellarIP has created a complete Xilinx ISE project which includes a few files worth mentioning. In chapter StellarIP plug-in configuration we have browsed to a path containing a StellarIP Definition File (.sdf). The StellarIP Definition File was part of the Implement folder and the StellarIP output is created in the Output folder. By default, the output folder is found at the following path: {path}\{interface}\Step 1\{projectname}\output\{projectname}\. Available after StellarIP generation: compile.do is a TCL macro for Modelsim. This file compiles the complete design and is typically called by the testbench compile.do macro. This gets Modelsim ready to simulate the design. trainmaterial_step1.bat is a batch file for Windows. It will invoke Xilinx tools (command line) to compile the project. trainmaterial_step1.xise/ise is Xilinx ISE Navigator files. These files can be loaded into Xilinx Project Navigator like any other Xilinx ISE project. trainmaterial_step1.h is a software header with addresses of all the stars part of our constellation. In other words, this is the constellations mapping table. Src is a sub folder where all the VHDL sources are located.
April 2012
- 28 -
V4.2
Go back to the main Modelsim window and at the bottom you will see a text area named Transcript. You can then type run 200 us to move the simulation up to 200 microseconds. At this time the waveforms can be viewed from the Wave view as for a standard programmable logic project. You can again type run 200 us to move the simulation up to 400 microseconds. Some additional information is available on Modelsims debug view: # ** Warning: DMA Push/Pull 2K # Time: 267505100 ps Iteration: 0 Instance: /tb_trainmaterial_step1/fpga_a # ** Note: DMA Push, Size 2048 bytes # Time: 272600 ns Iteration: 0 Instance: /tb_trainmaterial_step1/fpga_a # ** Note: DMA Pull, Size 2048 bytes
4FM Get Started Guide www.4dsp.com
April 2012
- 29 -
V4.2
# Time: 275744 ns Iteration: 0 Instance: /tb_trainmaterial_step1/fpga_a # ** Note: Ready with reading SIP CMD script! # Time: 276744 ns Iteration: 0 Instance: /tb_trainmaterial_step1/fpga_a # ** Warning: Testbench ended # Time: 286744 ns Iteration: 0 Instance: /tb_trainmaterial_step1/fpga_a Additionally, the file output.txt found {path}\{interface}\Step 1\{projectname}\simulate\modelsim can be opened to ensure the data contained is as expected. The training material step1 design loops back DMA data so the file output.txt should match input.txt.
April 2012
- 30 -
V4.2
April 2012
- 31 -
V4.2
April 2012
- 32 -
V4.2
6.1 Preparation
Lets prepare a training material step 3 folder along the other training material. The idea here is duplicating the step2 folder (found by default on {path}\Firmware\{interface}). Name this folder Step 3 and place this folder somewhere on your harddisk where you have read/write/modify access rights for.
Note : pre created Step3 training materials are already existing and can be found in the same
firmware folder. This is why it makes sense to duplicate Step two folders somewhere else on your hard disk. We should also rename the StellarIP files in this folder from {id}_trainmaterial_step2.* to {id}_trainmaterial_step3.*. The files to be renamed are found by default on {id}_step3\{projectname}\implement. For example, a file ml605_trainmaterial_step2_lx240t.big should be renamed to ml605_trainmaterial_step3_lx240t.big. Lets also modify ml605_trainmaterial_step3_lx240t.sdf. We have to change the project name (PROJ_NAME), the project ID (PROJ_ID), the project description (PROJ_DESC), the author name (PROJ_AUTHOR) as well as the project constraint file location (PROJ_CONSTRAINTS). Modified lines are showed below:
PROJ_NAME={projectname}; PROJ_DESC=FM680 training material (step 3); PROJ_ID=555; PROJ_AUTHOR=Trainee; PROJ_CONSTRAINTS={projectname}.ucf;
Note : substitute {projectname} for both PROJ_NAME and PROJ_CONSTRAINTS with the actual
project name, the name of the .sdf is in fact {projectname}. As an example if your sdf file is called ml605_trainmaterial_step3_lx240t.sdf, then {projectname} inside this file is ml605_trainmaterial_step3_lx240t
At this stage it is good habit to try compiling the design making sure the design is still compiling properly.
April 2012
- 33 -
V4.2
The Star Selection drop-down list in the Star Editor plug-in shows stars available in the library.
April 2012
- 34 -
V4.2
Still using the Star View, please configure the Number Registers field to 4 and make sure Include Register Code is checked. This tells StellarIP that the star sip_regonly has four registers. You may refer to the picture below showing proper configuration of the Star Editor plug-in. Do not forget to press the Save current star to file button in order to save your changes to library itself.
Figure 21 : Proper "Star Editor" configuration for our "sip_regonly" star 4FM Get Started Guide www.4dsp.com
April 2012
- 35 -
V4.2
Pressing Ok button actually creates the VHDL code for this star. Successful generation of a star yield into something equivalent to the following log:
INFO INFO INFO INFO INFO INFO INFO : Created the top level star skeleton. : Translated stellar_cmd template. : Translated stellar_regs template. : Added registers into the entity. : Replaced component declaration into the file. : Replaced component instantiation into the file. : Created the initial star .lst file
The output folder (C:\MyDsn\555_ml605_trainmaterial_step3\star_lib\sip_regonly) should now contain five files: sip_regonly.lst, sip_regonly.nfo, sip_regonly.vhd, sip_regonly_stellar_cmd.vhd and sip_regonly_stellar_regs.vhd.
4FM Get Started Guide www.4dsp.com
April 2012
- 36 -
V4.2
The last step to have a valid star is to modify the info file (.nfo) for the star. The file should be modified in the output folder (C:\MyDsn\555_ml605_trainmaterial_step3\star_lib\sip_regonly). The .nfo file has two lines and is generally names {starname}.nfo. The first line is the star ID number and the second one is the version. In this case we are creating a .nfo file with only two ASCII lines:
STAR_ID=0999 STAR_VERSION=0200
We have successfully added a custom star to the library and to the support code area. The star does nothing besides allowing the host to read/write registers into it at the moment.
We connect sip_regonly stars inputs. The following line should be added to the .sdf file:
--connect regonly inputs sip_regonly.0(rst) sip_regonly.0(cmdclk_in) sip_regonly.0(cmd_in) <= sip_clkrst_fm680.0(rst_out); <= sip_ifpga_sl.0(cmdclk_out); <= sip_ifpga_sl.0(cmd_out);
April 2012
- 37 -
V4.2
The .bit file previously created needs to be converted to a programming file (.hex) in order to be uploaded into the flash device. A bit file conversion tool is available and has been installed/referenced by the installer. Browse to the C:\Program Files\4dsp\4FM Core Development Kit\Bins folder. Drag and drop trainmaterial_step1.bit file onto bit2hex icon. The .bit file has been generated previously and can be found at the following location: C:\Program Files\4dsp\4FM Core Development Kit\StellarIP\Training Material\Firmware\{interface}\Step 3\projectname}\output\. The bit2hex application will generate a programming file using Xilinx Impact and this file will be created in the same folder as trainmaterial_step1.bit is. 6.8.2 Convert the .bit file into a .hex file (shell extension)
On Windows 7, the SDK includes a kernel extension one can use to easily convert a .bit file into a .hex file. It is available when right clicking a .bit file and choosing Convert to programming file (.hex).
April 2012
- 38 -
V4.2
The .bit file is going to be converted to a .hex file and the .bit file will be deleted. Note that this process can take up to two minutes and no specific information will be displayed on the screen. 6.8.3 Upload the firmware into hardware
Now that we have a .hex programming file we will use the 4FM GUI Control application and the Registers/Update plug-in. We want to upload a firmware into FPGA B because FPGA A should not be changed unless explicitly requested by 4DSP. Browse to the .hex file just created and press the Load button. As soon the operation succeeds, you should do a power cycle of the computer. After the computer has rebooted start the 4FM GUI control application, select the hardware, and switch to the Diagnostics/Information plug-in. The FPGA B firmware ID has changed and now reflects the training material step1 as expected.
6.9 Test the firmware using StellarIPs Script Parser (PCI/PCIe hardware)
During our simulation we have looked and modified the sip_cmd.sip file on chapter Modifying simulation behaviour. 4DSP provides the customers with an application which parses this file and communicates with the hardware through the API and the device driver. It is generally convenient to quickly inspect firmware behavior; this is possible without the requirement of coding a line of software. This application is a command line application and has been referenced by the SDK installer which can be called from any folder in your system. The syntax of this application is the following:
4FM SIP Script Parser.exe {Device Type} {Device Number} {Script Name}
Device Type is the device type you have purchased from 4DSP (FM489, FM680, FC6301) Device Number is always 0 (zero) unless you have several 4DSP hardware devices in your system. Script Name is the name of the script needed to be parsed by the application.
Open a command prompt windows and change directory (cd) to the modelsim folder:
cd {path}\{interface}\Step 3\{projectname}\simulate\modelsim 4FM Get Started Guide www.4dsp.com
April 2012
- 39 -
V4.2
April 2012
- 40 -
V4.2
April 2012
- 41 -
V4.2
7 Training materials
Training materials are provided to the customers: step1 and step2. These examples are very similar to each other and both have a firmware and a software project. The firmware is meant to be processed by StellarIP and the software is meant to be compiled by Microsoft Visual Studio. Make sure to use the correct training material for the device you are targeting. If you are targeting a VP680 device, then use the VP680 training material during your tests. If the training material for your device does not exist, then please email support@4dsp.com for help. Please check the StellarIP definition file (.sdf) to make sure the actual FPGA device supported by the training material matches the FPGA device you are targeting. Modify the sdf only if required. In order to modify a design to a SX375T, change:
TRGT_FPGA_TYPE=XC6VLX240T-1FF1759; ( old )
To:
TRGT_FPGA_TYPE=XC6VSX375T-1FF1759; ( new )
7.1 Step 1
Step1 material can be found at the following location: C:\Program Files\4dsp\4FM Core Development Kit\StellarIP\Training Material\Firmware\{interface}\Step 1 There you will find the files the first constellation is made from. This constellation includes the bare minimum firmware targeting FPGA B. The StellarIP Definition File (.sdf) is to be found under the implement folder. Step1 is likely to be used as a skeleton for your own project. The .sdf file declares following stars and the top-level diagram is depicted in Figure 23: sip_cid This star is optional but recommended. It allows the host application to retrieve various information as the firmware ID given in the Stellar Definition File (.sdf). This star is not used in the step but will be used later on. sip_clkrst_fm680 This star is required. It provides the firmware blocks with the required clocks and reset signals available from the inter-FPGA interface. A Firmware requires reset signals and clocks. This star provides the user with several clock and reset phases and frequency.
4FM Get Started Guide www.4dsp.com
April 2012
- 42 -
V4.2
sip_ifpga_sl
This star is a bridge between FPGA A and FPGA B. It has a command wormhole as well as a data wormhole. The commands and data are forwarded by FPGA A providing a communication interface between the host computer and FPGA B.
sip_cmd12_mux
Every star has a command wormhole output able to return register data to the host. This multiplexer allows to "multiplex" 12 command wormholes to one command wormhole.
SIP IFPGA SL
SIP CID
SIP CLKRST
data
Cmd_in
Cmd_out
In this constellation, the sip_ifpga_sl star has its data input wormhole connected to its data output wormhole. This provides a loop-back mechanism. Any data send to the board up to 4096 bytes will be echoed by the firmware. The software flow is as the following: 1) Two 4kB (4096 bytes) aligned buffers are allocated using Microsoft's _aligned_malloc() function. 2) The 4DSP hardware is opened and then initialized using _4FM_OpenDevice(), _4FM_ResetDevice() and _4FM_SelectTarget(). 3) The output DMA buffer is filled with random data using rand(). 4) The output DMA buffer containing random data is sent to the hardware(firmware) using _4FM_SendData(). 5) The input DMA buffer obtains data from the hardware(firmware) using _4FM_ReceiveData(). 6) Both DMA buffers are then compared and should be equal. Note1 : The ML605 ethernet training material are limited to 1kB transfer and therefore the 4kB above should be reduce to 1kB (1024 bytes). Note 2 : SIP IFPGA SL can be substituted with SIP HOST IF on the FC6301/VP680/ML605 training material
April 2012
- 43 -
V4.2
7.2 Step 2
Step2 material can be found at the following location: C:\Program Files\4dsp\4FM Core Development Kit\StellarIP\Training Material\Firmware\{interface}\Step 2 Here you can find the files the training material step2 constellation is made from. This constellation includes the bare minimum a firmware targeting FPGA B. Additionally it includes an adder star. The adder star has a command input and output wormhole, two configuration registers as well as a data input and a data output wormhole. The StellarIP Definition File (.sdf) file is to be found under the implement folder. Step2 is also likely to be used as a skeleton for your own project. A top level diagram of this constellation is depicted in Figure 24. The .sdf file declares following stars: sip_cid This star is optional but recommended. It allows the host application to retrieve various information as the firmware ID given in the Stellar Definition File (.sdf). This star is not used in the step but will be used later on. sip_clkrst_fm680 This star is required. It provides the firmware blocks with the required clocks and reset signals available from the inter-FPGA interface. A Firmware requires reset signals and clocks. This star provides the user with several clock and reset phases and frequency. sip_ifpga_sl This star is a bridge between FPGA A and FPGA B. It has a command wormhole as well as a data wormhole. The commands and data are forwarded by FPGA A providing a communication interface between the host computer and FPGA B. sip_cmd12_mux Every star has a command wormhole output able to return parameters to the host. This multiplexer allows to "multiplex" 12 command wormholes to one command wormhole. sip_adder This star can receive a 64 bit wide data stream ( on the data_in port ) and it can output a 64 bit data stream ( on the data_out port ). It also has two 32 bit wide configuration registers representing the value to add on the input data stream. data_out[i] = data_in[i] + (Register2<<32|Register1).
April 2012
- 44 -
V4.2
SIP Adder
SIP IFPGA SL
SIP CID
SIP CLKRST
data
Cmd_in
Cmd_out
In this constellation, the sip_ifpga_sl star output wormhole is connected to the adder star's data input wormhole. On the other hand, the sip_ifpga_sl star input wormhole is connected to the adder star's data output wormhole. The sip_ifpga_sl star command output is connected to the adder star's command input wormhole. The software flow is as the following: 1) Two 4kB (4096 bytes) aligned buffers are allocated using Microsoft's _aligned_malloc() function. 2) The output DMA buffer is filled with zero memset(). 3) The 4DSP hardware is opened and then initialized using _4FM_OpenDevice(), _4FM_ResetDevice() and _4FM_SelectTarget(). 4) The adder star in the firmware is configured via 2 configuration registers modified using _4FM_Write(). 5) The output DMA buffer containing zero data is sent to the hardware(firmware) using _4FM_SendData(). 6) The input DMA buffer obtains data from the hardware(firmware) using _4FM_ReceiveData(). 7) The expected value pointed by any index is computed. 8) The input DMA buffer is verified. Note 1 : The ML605 ethernet training material are limited to 1kB transfer and therefore the 4kB above should be reduce to 1kB (1024 bytes). Note 2 : SIP IFPGA SL can be substituted with SIP HOST IF on the FC6301/VP680/ML605 training material
April 2012
- 45 -
V4.2
7.3 Step 3
Step3 was created on chapter StellarIP Star Creation: C:\Program Files\4dsp\4FM Core Development Kit\StellarIP\Training Material\Firmware\{interface}\Step 3
7.4 Step 4
This training material is not yet described but is actually an extension of Step 1 training material providing a blockRAM based FIFO for the ML605-Ethernet interface. It provides transfer up to 64kB.
April 2012
- 46 -
V4.2
8 Evaluating FMC AD/DA product using Xilinx Development kits (ML605, SP601, SP605)
1) 2) 3) Make sure the development board (either SP601 or ML605) is powered down. In case of ML605, make sure the PHY jumper setting on the development board selects GMII/MII interface mode. This is the factory default jumper setting. Plug the FMC card on the development board. Use the LPC connector on the ML605 (J63) for LPC boards or use the HPC connector on the ML605 (J64) for HPC boards.
FMC (LPC) FMC (HPC)
FMC (LPC)
Ethernet
4)
Connect the USB cable that comes with the development board to the USB JTAG connection on the development board. Connect the other end of the cable to your host computer.
April 2012
- 47 -
V4.2
5)
6)
Connect the Ethernet cable that comes with the development board to the Ethernet connection on the development board. Connect the other end of the cable to your host computer (only direct connection without Ethernet switch/hub is supported). Power up the development board.
Make sure there is proper air flow across the FMC card when power is supplied to the board. A minimum airflow of 300 LFM is recommended. 4DSPs warranty does not cover boards on which the maximum allowed temperature has been exceeded.
7) Load the reference firmware from C:\Program Files\4dsp\Common\Firmware\Recovery. The FMC reference firmware are found among the following folders: a. 078_ml605_fmc110 b. 088_ml605_fmc150 c. 089_ml605_fmc126 d. 092_sp601_fmc150 e. 095_ml605_fmc204 f. 098_sp605_fmc150 g. 104_ml605_fmc125 h. 111_ml605_fmc108 i. 112_ml605_fmc104 j. 113_ml605_fmc103 k. 114_ml605_fmc107 8) Xilinx Impact can be used to directly load the .bit files to the FPGA using Boundary Scan. Choose the bit file that reflects your development board and FMC card, for example: a. ml605_fmc110.bit needs to be used for evaluation of the FMC110 on a ML605 development board. b. sp601_fmc104.bit needs to be used for evaluation of the FMC104 on a SP601 development board. 9) From a command window browse to C:\Program Files\4DSP\FMC Board Support Package\Bins and run the application that matches your FMC card. Refer to Table 1. A list of Ethernet devices is shown. Look for the Ethernet device that connects to the development board. 10) Call the application, here is the application usage:
FMCxxxApp.exe {interface type} {device type} {device index} {clock mode}
Where interface type is either 0 (PCI) or 1 (Ethernet), device type is a board as the ML605, device index is the NDIS device index found about on 9) and clock mode can be either 0 (Internal clock) or 1 (External Clock).
April 2012
- 48 -
V4.2
11)
12)
The sample data is stored in the folder C:\Program Files\4DSP\FMC Board Support Package\Bins for each channel an ASCII file and a binary file is created (bufx.txt (ASCII) and bufx.bin (Binary)). The DAC outputs (if applicable) will show a sine wave. FMC series FMC10x series FMC110 series FMC204 series FMC12x series FMC150 series FMC Types FMC108, FMC107, FMC104, FMC103 FMC110 FMC204 FMC122, FMC125, FMC126 FMC150
Table 1: Application overview
Note : If the access right are not correct, the application will not store any buffer to hard disk. If this would happen, then copy the compiled application somewhere you have write access, typically the Desktop is a place every user has got write access by default.
8.1 Documentation
For each board type a user manual is installed in C:\Program Files\4DSP\FMC Board Support Package\Docs. The firmware (constellation) documentation as well as star (ip core) documentation is found in the .4ff files. More information about firmware and 4ff files can be found in Firmware overview chapter.
X V1 V1 V1 X
X V1 V1 V1 X
V V V V V
April 2012
- 49 -
V4.2
FMC204 (HPC) FMC122 (LPC) FMC125 (HPC) FMC126 (HPC) FMC150 (LPC)
X V1 X X V
X V1 X X V
V V V V V
Reference firmware not yet released. Please contact 4DSP for more information
April 2012
- 50 -
V4.2
FMC645-DSP
Note that the framework expects the host computer to have a 1Gbps Ethernet port (10Mbps and 100Mbps are not supported by the ML605 FPGA firmware).
April 2012
- 51 -
V4.2
9.1.1
The TCP/IP settings in windows should be changed for the Ethernet interface about to receive connection to the ML605. The settings should reflect the settings on the image below. Note that this interface must support 1Gbps (one Giga bit per seconds) as the firmware does not support 10/100Mbps speeds.
The virtual com driver required by the CP2102 chip on the ML605 should be downloaded on the Silicon Labs website. A direct link to the actual installer is CP210x driver download. Please reboot your host computer if prompted to do so.
April 2012
- 52 -
V4.2
9.1.2 -
Prepare and connect ML605 to the host computer An USB cable between ML605s JTAG and the host computer. An USB cable between ML605s UART and the host computer. An Ethernet cable between ML605s Ethernet connector and the host computer. The Ethernet interface on the host computer should support 1Gbps as 10/100Mbps are not supported by the FPGA firmware.
Three cables should be connected between the ML605 and the host computer:
The FMC6xx mezzanine should be attached to the ML605s HPC FMC connector. 9.1.3 Programming ML605 FPGA device (Virtex 6 LX240T)
The FPGA on ML605 should be programmed with a firmware in order to operate properly. The required FPGA programming file (.bit) is provided by 4DSP and is to be found in the same folder as the FLASH programming file. These items are found i the recovery portion of the firmware files installed by this installer. The default path for these recovery files is C:\Program Files\4DSP\Common\Firmware\Recovery\196_ml605_fmc645. Xilinx iMPACT should be used in order to upload the FPGA programming file (.bit) in the FPGA. More information about firmware and recovery files can be found in the following chapter: 4FM Firmware (Recovery Files) 9.1.4 Programming ML605 Flash device (Optional)
If the FLASH device is not programmed, then impact should be used to program the FPGA programming file (.bit) into the FPGA each time ML605 is power cycled. This is equivalent of repeating instructions in the Programming ML605 FPGA device (Virtex 6 LX240T) paragraph again and again. The required FLASH programming file (.mcs) is provided by 4DSP and is to be found in the same folder as the FPGA programming file. These items are found in the recovery portion of the firmware file installed by this installer. The default path for these recovery files is C:\Program Files\4DSP\Common\Firmware\Recovery\196_ml605_fmc645. More information about firmware and recovery files can be found in the following chapter: 4FM Firmware (Recovery Files)
April 2012
- 53 -
V4.2
Procedure: 1) Configure ML605s S2 dip switch block as the following (S2.1=Off, S2.2=On, S2.3=Off, S2.4=On, S2.5=Off and S2.6=Off). 2) Attach an USB cable from ML605s JTAG port to the host computer. 3) Power up ML605. 4) Open Xilinx IMPACT and choose Boundary Scan from the left pane 5) Right click on the right pane and and choose Initialize Chain from the contextual menu. 6) On the chain representation, double click SPI/BPI above xc6lv240t. 7) In the ADD Prom File dialog browse to the correct FLASH programming file (.mcs) and press OK. 8) In the Select Attached SPI/BPI choose BPI PROM, 28F256P30, 16 and NOT USED and press OK. 9) Click on the FLASH device above xc6vlx240t and double click Program from the iMPACT Processes on the left pane. 10) Leave all the default settings in the Device Programming Properties dialog and press OK. 11) Wait for about 20-25 minutes this is the time required to complete the FLASH upload process. 9.1.5 Verify FPGA firmware initialization
After programming the FPGA using iMPACT or having the FPGA configuration stored into ML605 FLASH it is mandatory to check for proper firmware initialization. A wrong firmware initialization indicates that the FPGA firmware is not ready for operation. Note that pressing CPU RST, SW10, causes the complete ML605 to be reset and the FPGA firmware initialization restarts so press that if you see an incorrect LEDs status. Note that an FMC645 mezzanine board should be attached to the HPC connector in order to have LEDs displaying a proper initialization status.
The FPGA firmware initialization status is displayed on ML605s GPIO LEDs and it is important that this LEDs display Ready status.
April 2012
- 54 -
V4.2
9.1.6
Check which virtual COM (UART) port is featured by the device driver
While following paragraph Prepare the host computers instructions, we have installed a virtual COM port driver downloaded from Silicon Labs website. The driver will kick in as soon the ML605 is powered up and an USB cable is connected between ML605s UART connector and the host computer. Looking at Windowss device manager in the Ports (COM & LPT) category indicates which COM port the ML605 is mapped to through the virtual COM port. In our case the com port name is COM5 as the following screen capture shows. This is the actual com port argument we will be passing to the test application later on.
April 2012
- 55 -
V4.2
9.1.7
4DSP provides a reference application able to check all the DSP interfaces. The DSP device is in charge of testing various DSP interfaces and is controlled by the host computer through a processor implemented in the ML605 FPGA. This application is provided as source code and as a precompiled executable. The precompiled binary is the component we are going to use on the next chapter. Complete execution of the application takes 5 to 10 minutes and goes through testing the following interfaces: 9.1.8 I2C PCI GPIO EMIFA MCBSP ETHERNET Executing the FMC645 Test Peripheral Application
In a command prompt window, navigate (cd) to FMC board support package binary folder (default location is C:\Program Files\4DSP\FMC Board Support Package\Bins) and execute the application. cd C:\Program Files\4DSP\FMC Board Support Package\Bins fmc645_microblaze_test_peripherals.exe COM5
Note that COM5 passed as argument should be replaced the actual COM port found while following instructions on paragraph Check which virtual COM (UART) port is featured by the device driver. An example of correct console output can be seen in Annex (Annex 5 fmc645 test peripherals log) 9.1.9 Obtaining more information, technical support
Please refer to the FMC645 or the FMC667 user manuals for a detailed description of the BSP as well as detailed instruction on how to compile the FPGA firmware, the Microblaze software as well the DSP software. In case of technical problems, please register to the 4DSP support forum (4DSP Forum) indicating the serial number of your mezzanine card.
April 2012
- 56 -
V4.2
April 2012
- 57 -
V4.2
April 2012
- 58 -
V4.2
April 2012
- 59 -
V4.2
April 2012
- 60 -
V4.2
April 2012
- 61 -
V4.2
STATUS : Closing 'C:\Documents and Settings\Arnaud Maye\Desktop\FW_POOL\Firmware 4FF\fm482_feb09_fpgaA_ddr_test.4ff' STATUS INFO STATUS : Computing CRC of file 'fm482_feb09_fpgaA_ddr_test.4ff', please wait : Successfully verified 'fm482_feb09_fpgaA_ddr_test.4ff' integrity. : DeObfsucating 'fm482_feb09_fpgaA_ddr_test.4ff'
ERROR : Computing CRC of the code block in 'fm482_feb09_fpgaA_ddr_test.4ff', please wait INFO STATUS INFO STATUS STATUS STATUS STATUS : Successfully verified 'fm482_feb09_fpgaA_ddr_test.4ff' integrity. : Successfully checked out a license for the selected .4FF file : Decrypting the code block , please wait... (can take up to 10 minutes) : Computing CRC of 'temp.7z' : Verified decryption... The file is ready to be uncompressed... : Decompressing 'temp.7z' : The firmware is ready to be used
April 2012
- 62 -
V4.2
April 2012
- 63 -
V4.2
This is a sample license. Any modification to the license file will render the license invalid. You are required one of these lines per product. 11.2.1 The NOTICE= field The notice field helps to understand what kind of license you have received. As of the date of this documents writing, 4DSP is issuing the following type of license codes: DEMO. This is a demo license file. These licenses are generally locked to a computer hardware ID as well as set with an expiration date. A DEMO license does not support installing any firmware. However you are allowed to use all the installed recovery files without any restriction. SOURCE. This is the license our customers receive which allows the licensee to install and decrypt firmware package files. These licenses are typically purchased as floating licenses without an expiration date.
11.2.2 The HOSTID= field The HOSTID field allows a customer to understand what kind of license he has received. So far, 4DSP is issuing the following type of license codes: ANY. In this case the license can be used on any computer. However, please consult the EULA to ensure you are allowed to do that, especially if you have an agreement for a maximum number of seats with 4DSP. {ID}. If a code is there instead ANY. Then your license code will only operate on the machine with the same ID code. The computer ID is displayed in the main graphical user interface caption (HOSTID=nnnnnn).
11.2.3 The EXPIRY= field The HOSTID field allows a customer to understand what type of license he has received. As of the date of this document, 4DSP is issuing the following type of license codes: NEVER. This license code does not expire. {DATE}. This license operates until {DATE} is reached.
4FM Get Started Guide www.4dsp.com
April 2012
- 64 -
V4.2
12.2 Compiling
The 4FM.vcproj Visual Studio project file can be opened and compiled like any other application sources.
April 2012
- 65 -
V4.2
April 2012
- 66 -
V4.2
output
doc
simulate
Star_lib
sip_xx
modelsim
sip_files
testbench
vhdl
doc
IP specific documentation
April 2012
- 67 -
V4.2
-----------------------------------------------------------------------Checking StellarIP firmware attributes Firmware ID Firmware FW Version Number of FW stars sip_ub_fmc645 address : 196 : 1 : 5 : 0x0 Firmware SW Build Code : 1332412368 Firmware FW Build Code : 0
-----------------------------------------------------------------------Now that I2C is verified, lets check board diagnostics, please wait...
Checking Board Diagnostics: Temp ADT Temp TMSC6455 3V3 1V8 OK (38C) OK (38C)
1V25 on FMC645 OK (1.2V) 1V25 on FMC645 OK (1.2V) 2V5 3V3 0V9 on FMC645 OK (2.5V) on FMC645 OK (3.2V) on FMC645 OK (0.9V)
-----------------------------------------------------------------------Now that I2C is verified, lets check 24LC02B chip, please wait... sip_fmc645_test address : 0xc0009000 Writing 256 bytes to the EEPROM
April 2012
- 68 -
V4.2
.............................................................................................. .............................................................................................. .......................................................... Verifying 256 bytes in the EEPROM .............................................................................................. .............................................................................................. .......................................................... EEPROM verification finished with (0) error(s) 24LC02B Test results : Test Succeeded!
-----------------------------------------------------------------------Testing I2C communication from host to the TMS320C6455 device... Uploading the DSP software task to the DSP, please wait...(100%) I2C Test results : Test Succeeded!
-----------------------------------------------------------------------Measuring frequencies Stellar IP Clock : 100.00 MHz DSP CLKIN1 DSP CLKIN2 DSP CLK 50MHZ DSP CLK 125MHZ DSP SYSCLK4 : : : : 40.00 MHz 25.00 MHz 50.00 MHz 75.00 MHz (dsp clock = 1200.00 MHz)
: 125.00 MHz
-----------------------------------------------------------------------Testing GPIO on the FMC645... DSP Software about to be uploaded to DSP is 'fmc645_gpio_ack.hex' Argument1 (8 Bit) about to be passed to DSP is '0x00' Argument2 (8 Bit) about to be passed to DSP is '0x00' Uploading the DSP software task to the DSP, please wait...(100%) Waiting DSP to advertise himself as ready... Done! Sending first argument to DSP software... Done! Sending second argument to DSP software... Done! Telling DSP to start executing the DSP software... Done! Wait DSP software to indicate end of execution... Done! Reading error code register 1 from the DSP software... Done! Reading error code register 2 from the DSP software... Done! Status code 1 received from DSP software '0x0' Status code 2 received from DSP software '0x0' GPIO Test results: Status = Test Succeeded!
-----------------------------------------------------------------------Testing MCBSPs on the FMC645... DSP Software about to be uploaded to DSP is 'fmc645_mcbsp_ack.hex'
April 2012
- 69 -
V4.2
Argument1 (8 Bit) about to be passed to DSP is '0x00' Argument2 (8 Bit) about to be passed to DSP is '0x00' Uploading the DSP software task to the DSP, please wait...(100%) Waiting DSP to advertise himself as ready... Done! Sending first argument to DSP software... Done! Sending second argument to DSP software... Done! Telling DSP to start executing the DSP software... Done! Wait DSP software to indicate end of execution... Done! Reading error code register 1 from the DSP software... Done! Reading error code register 2 from the DSP software... Done! Status code 1 received from DSP software '0x0' Status code 2 received from DSP software '0x0' MCBSP Test results: Status = Test Succeeded!
-----------------------------------------------------------------------Testing SRIO on the FMC645... DSP Software about to be uploaded to DSP is 'fmc645_srio_ack.hex' Argument1 (8 Bit) about to be passed to DSP is '0x00' Argument2 (8 Bit) about to be passed to DSP is '0x00' Uploading the DSP software task to the DSP, please wait...(100%) Waiting DSP to advertise himself as ready... Done! Sending first argument to DSP software... Done! Sending second argument to DSP software... Done! Telling DSP to start executing the DSP software... Done! Wait DSP software to indicate end of execution... Done! Reading error code register 1 from the DSP software... Done! Reading error code register 2 from the DSP software... Done! Status code 1 received from DSP software '0x0' Status code 2 received from DSP software '0x0' SRIO Test results: Status = Test Succeeded!
-----------------------------------------------------------------------Testing EMIFA on the FMC645... DSP Software about to be uploaded to DSP is 'fmc645_emifa_ack.hex' Argument1 (8 Bit) about to be passed to DSP is '0x00' Argument2 (8 Bit) about to be passed to DSP is '0x00' Uploading the DSP software task to the DSP, please wait...(100%) Waiting DSP to advertise himself as ready... Done! Sending first argument to DSP software... Done! Sending second argument to DSP software... Done! Telling DSP to start executing the DSP software... Done! Wait DSP software to indicate end of execution... Done! Reading error code register 1 from the DSP software... Done! Reading error code register 2 from the DSP software... Done! Status code 1 received from DSP software '0x4' Status code 2 received from DSP software '0x4'
April 2012
- 70 -
V4.2
-----------------------------------------------------------------------Testing DDR2 Memory on the FMC645 (512MBytes)... DSP Software about to be uploaded to DSP is 'fmc645_ddr2_ack.hex' Argument1 (8 Bit) about to be passed to DSP is '0x40' Argument2 (8 Bit) about to be passed to DSP is '0x00' Uploading the DSP software task to the DSP, please wait...(100%) Waiting DSP to advertise himself as ready... Done! Sending first argument to DSP software... Done! Sending second argument to DSP software... Done! Telling DSP to start executing the DSP software... Done! Wait DSP software to indicate end of execution... Done! Reading error code register 1 from the DSP software... Done! Reading error code register 2 from the DSP software... Done! Status code 1 received from DSP software '0x3' Status code 2 received from DSP software '0x0' DDR2 Test results: Status = Test Succeeded!
-----------------------------------------------------------------------Now that DSP is hot after DDR2 test, lets check board diagnostics, please wait...
Checking Board Diagnostics: Temp ADT Temp TMSC6455 3V3 1V8 OK (39C) OK (39C)
1V25 on FMC645 OK (1.2V) 1V25 on FMC645 OK (1.2V) 2V5 3V3 0V9 on FMC645 OK (2.5V) on FMC645 OK (3.2V) on FMC645 OK (0.9V)
-----------------------------------------------------------------------Testing EMAC on the FMC645... Before to continue further, please connect an ethernet cable between ML605 and your host... Configure your HOST TCPIP/V4 Settings as the following: IP ADDRESS : GATEWAY NETMASK : : 192.168.254.2 (Host address) 192.168.254.1 (DSP address) 255.255.255.0
April 2012
- 71 -
V4.2
As soon this is done please press RETURN to continue Uploading the DSP software task to the DSP, please wait...(100%) Waiting 25 seconds to making sure the link is up... %%%%%%%%%%%%%%%%%%%%%%%%% Trying to connect to the DSP using TCP/IP: Done Writing 10 registers to the DSP address space (Via TCPIP), please wait... Reading 10 registers back from the DSP address space (Via TCPIP), please wait... 0x00000000 : 0x00000000 0x00000001 : 0x00000001 0x00000002 : 0x00000002 0x00000003 : 0x00000003 0x00000004 : 0x00000004 0x00000005 : 0x00000005 0x00000006 : 0x00000006 0x00000007 : 0x00000007 0x00000008 : 0x00000008 0x00000009 : 0x00000009 Comparing 10 registers read back from the Microblaze address space, please wait... 0x00000000 : 0x00000000 (OK) 0x00000001 : 0x00000001 (OK) 0x00000002 : 0x00000002 (OK) 0x00000003 : 0x00000003 (OK) 0x00000004 : 0x00000004 (OK) 0x00000005 : 0x00000005 (OK) 0x00000006 : 0x00000006 (OK) 0x00000007 : 0x00000007 (OK) 0x00000008 : 0x00000008 (OK) 0x00000009 : 0x00000009 (OK) Ethernet Test results : Test Succeeded! You should be able to ping 192.168.254.1 (the DSP)
Checking Board Diagnostics: Temp ADT Temp TMSC6455 3V3 1V8 OK (40C) OK (40C)
April 2012
- 72 -
V4.2
3V3 0V9
April 2012
- 73 -
V4.2
April 2012
- 74 -