Home
CPhyGenCtl User`s Manual
Contents
1. Address Email Web site Documentation 1 503 626 9663 US Pacific Time Zone 1 503 626 9653 US Pacific Time Zone The Moving Pixel Company 4905 SW Griffith Drive Suite 106 Beaverton Oregon 97005 USA information movingpixel com http www movingpixel com The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 1 Overview The CPhyGenCtl application is the controlling software for the CPhy Generator P339 made by The Moving Pixel Company TMPC Using this instrument the user can generate CSI protocol and pattern stimulus on a MIPI CPhy bus for receiver testing This document describes the use and operation of CPhyGenCtl and the corresponding behavior of the CPhy Generator For those familiar with earlier TMPC MIPI products the CPhyGen instrument is similar in functionality to the P331 P332 P338 DPhy probe family Unlike prior DPhy solutions that required use of a general purpose pattern generator PG3A the CPhy Generator is a stand alone instrument containing an internal pattern generator Thus it is the only custom hardware required for CPhy generation The CPhy Generator is connected via USB to a host computer that runs the CPhyGenCtl software It has the following capabilities Connects via either USB2 or USB3 Supports one to four CPhy lanes supporting frequencies up to 2 6 Gsym s Has SMA outputs for each wire of each lane Contains internal pattern generator with 2 GB of program
2. 2 Click on a component command in the macro to retrieve its argument settings 3 Change the argument settings as desired 4 Click the Send button to insert the modified command into the macro both the new command and old command will now be in the macro list 5 Click the Delete button to delete the old component command 6 Click the End Macro button and Click OK to save the modified macro 5 9 5 Allowed Component Commands Any single LP or HS command can be inserted into a macro In addition here are notes on inserting special command types in to a macro Component commands with BTA enabled are allowed in macros and behave as expected The PG waits for a return BTA before continuing with the remaining component commands in the macro WriteMemoryStart and WriteMemoryContinue commands are fully supported in macros including BMP file decoding and command partitioning to support large WriteLen counts Macros cannot contain other macros that is macro nesting is not allowed However macros can nonetheless be added to other macros in which case the component commands of the macro being added are themselves duplicated and added to the macro being edited Page 45 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 Unlike all other commands video mode commands are treated differently when added to a macro than when sent directly In a macro video mode commands simpl
3. Page 31 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 e The BTA timeout is set in the Instrument Configuration dialog with the control BTA Wait Time To avoid any timeout the user can set the Disable Command Timeout option Options menu If necessary the Stop PG button can be used to terminate a command waiting for a return BTA e While the CPhy Generator is waiting for a return BTA from the DUT the main window status bar will display Waiting on BTA 5 6 6 14 Escape Command The Escape Command option lets the user send a phy escape command byte The only argument is the command byte to send Note that this command is different than a packet sent in LPDT mode LPDT mode uses an escape command byte of 0x87 to put the receiver in LPDT mode and then sends the packet bytes 5 7 Special Phy Commands Several command under the Phy Commands category invoke lower level test modes of the CPhy Generator instrument These consist of the following commands implementing a superset of the CPhy TGR and PN test specifications TGR Data Sequence TGR Symbol Sequence TGR State Sequence PRBS9 Sequence PRBS11 Sequence PRBS18 Sequence All of these commands start by sending an HS burst entry sequence on all active lanes using the current CPhy timing settings The only difference is that the Start Preamble sequence is replicated by the TGR Pre Length setting plus one as defined
4. Whether any LP contention has been detected since the last status reset Read response data received from the DUT after a BTA Note read response data is only displayed after a running program has stopped or the user explicitly requests that the read response data is read from the instrument Page 48 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 5 11 2 1 Contention Detection The CPhy Generator is equipped with contention and data receivers on lane 0 whose thresholds can be set by the user in the Instrument Configuration dialog see section 5 4 2 for more details When the probe is outputting an LP high voltage and its receiver detects a voltage below the LP High contention threshold an LP high fault is detected When the probe is outputting an LP low voltage and its contention receiver detects a voltage above the LP Low contention threshold an LP low fault is detected As these faults can occur on any of wire LP signal wire this results in six possible contention states The mnemonics used in CPhyGenCtl for contention detection is as follows e Tx0A contention detected on lane 0 wire A when transmitting LPO e Tx0B contention detected on lane 0 wire B when transmitting LPO e Tx0C contention detected on lane 0 wire C when transmitting LPO e Tx1A contention detected on lane 0 wire A when transmitting LP1 e Tx1B contention detected on lane 0 wire B when transmitting LP1 e Tx1
5. s Manual Doc Rev 1 0 6 16 14 e Edit the command fields e Click the Save button e Click OK in the Name Cmd dialog e Click OK to the confirmation dialog to replace the existing command definition Macro editing is described in Section 5 9 2 5 6 4 Managing Commands renaming ordering deleting The button labeled with an ellipsis immediately to the right of the Cmd Name drop down control allows the user to manage the named command list including renaming commands reordering and sorting commands in the drop down list deleting commands etc Click this button to bring up a List dialog to perform these functions See section 5 2 for more information about this dialog 5 6 5 Saving Restoring Command Configurations A default cfg file is provided with CPhyGenCtl installation that has a few example commands defined Once you add new command definitions you can save your command configuration command set and button assignments in a configuration file Note that command definitions and button assignments are not automatically saved when the application is closed Use the File gt Save XXX cfg As menu option and specify the name of the file to save to Similarly you can load a configuration file with the File gt Load menu option The last configuration file saved before exit is restored on relaunch 5 6 6 Special Command Types 5 6 6 1 Video Mode Commands Video mode commands are described in sect
6. Symbols are assigned to one lane or replicated across active lanes according to the argument Page 25 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 HS_STATES lt lg gt Sends one or more HS CPhy states States are assigned to one specific lane or replicated across active lanes according to the argument LP_STATES ACT lt dur gt Sends one or more LP states State values either specify all lane states at once or states are replicated across active lanes according to whether ACT is present LP_ESC_BYTES Sends one or more data bytes in LP escape mode using spaced one hot encoding HS_BURST_ENTRY Sends the HS burst entry LP sequence on active lanes using the current CPhy timing settings No element stream is associated with this command PREAMBLE Sends the currently defined preamble sequence on active lanes No element stream is associated with this command SYNC Sends the currently defined sync sequence on active lanes No element stream is associated with this command SYNC2 POSTAMBLE Sends the currently defined sync2 sequence on active lanes No element stream is associated with this command Sends the currently defined postamble sequence on active lanes No element stream is associated with this command HS_BURST_EXIT Sends the HS burst exit LP sequence on active lanes using the current CPhy timing settings No ele
7. The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 2 Setup amp Installation 2 1 Installing CPhyGenCil To install CPhyGenCtl simply execute the setup exe file on the installation CD and step through the setup windows As part of the installation a USB driver is installed called CyUSB3 sys This driver is required for the software to recognize the CPhy Generator instrument when connected to USB Periodically new versions of CPhyGenCtl are available on the Moving Pixel Company web site These upgrade versions do NOT install the CyUSB3 sys driver and assume the install machine already has the driver installed Thus new machines always must first have the initial setup installation run before any upgrades Note that previous versions do not need to be uninstalled before running installation of an upgrade version of CPhyGenCtl The CPhyGenCtl application is installed by default in the c Program Files TMPC CPhyGenCtl directory The following shortcuts are provided in the Start Menu under CPhyGenCtl e CPhyGenCtl exe a link to the application executable e CPhyGenCtlUsersManual_x_x pdf a link to this manual e Uninstall CPhyGenCtl a link to an uninstall script The CPhyGenCtl application runs under the WinXP Win7 and Win8 operating systems and uses the Microsoft NET Framework 3 5 platform Once the software has been installed for the first time you will need to copy the license file TMPCLicense txt
8. high level voltage M represents a mid level voltage L represents a low level voltage The first letter corresponds to the voltage on wire A The second letter corresponds to the voltage on wire B The third letter corresponds to the voltage on wire C CPhy state values and their corresponding wire voltages are defined in the CPhy generator as follows Table 2 CPhy HS States State Value ABC Wire Voltages 0 MMM illegal HS state 1 LMH 2 2 MHL Y 3 LHM X 4 HLM X 5 MLH Y 6 HML Z 7 MMM illegal HS state Note that the CPhy transmit states used here correspond to the state values that would be measured by a CPhy receiver As receiver measurements are made differentially between wires the differential voltages seen by the receiver are not the same as the single ended voltages driven by the transmitter and and described in table Table 2 CPhy HS States Page 7 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 State values of 0 and 7 are not legal values as defined by CPhy However they can be used if desired to cause medium level voltages to be output on all three wires in a trio 3 6 CPhy LP States CPhy LP states represent low power voltage levels for the ABC wires of a trio and can be specified in CPhyGenCtl as integer values ranging from 0 7 though only four of the eight LP states are used in CPhy 0
9. if checked a non video non macro non read command sent while a video mode is looping is automatically inserted once into the vertical blanking interval without stopping video playback If unchecked sending any command while a video mode command is looping causes CPhyGenCtl to ask whether you wish to stop video playback to send the command This function has been extended to work with a looping macro containing a command insertion point o Discard data during insertion this option when checked allows stream data following the insertion point to be discarded while the inserted command is played This maintains relative timing of events in the stream and assumes time has been reserved in the stream for the inserted command If this option is not checked the inserted command causes suspension of subsequent stream data until the inserted command has completed o Enable EoT packets this option when checked causes EoT packets to automatically be appended to non video HS bursts o Encode RAW format as Bayer this option enables Bayer encoding of RAW format video When the user enables this option a dialog is brought up for the user to select from among four Bayer color orderings GRBG RGGB BGGR GBRG The first two letters indicate the alternating colors for the first and every other line The second two letters indicate the alternating colors for the second and every other line o Configure CPhy Timing selecting this menu
10. 14 LP Low High Voltage Controls these controls set the LP voltage levels for all CPhy lanes LP voltages generally should be set to 0 0V low and between 1 1V and 1 3V high LP voltage limits are 0 28V and 1 8V LP Contention Thresholds these two controls determine the threshold voltage used for contention detection The LP Low contention threshold determines the voltage at which a LP Low fault is flagged i e when the transmitter attempts to drive an LPO and measures a voltage on the line greater than the threshold This value is nominally 0 45V according to the CPhy specification The LP High contention threshold determines the voltage at which a LP High fault is flagged i e when the transmitter attempts to drive an LP1 and measures a voltage on the line less than the threshold This value is nominally 0 55V according to the CPhy specification BTA Wait Time not applicable for CSI this control sets the time out period after a BTA is sent to wait for a return BTA sequence from the DUT Normally if a return BTA is seen the probe acknowledges the BTA and continues its program Similarly if the time out period expires the probe reasserts LP101 and continues its program Trig Pulse Width set the trigger pulse width when a trigger pulse is sent either through the Assert Trigger command in a program or the Trig Event button in the main window Phy Lane 0 Src sets the logical source lane for physical lane 0 While
11. HS packet applying to all active lanes For example PH 0 12h40 is short hand for HS_BURST_ENTRY PREAMBLE SYNC HS_BYTES_PLUS_CRC ACT 0 12h40 SYNC 2 HS_BYTES_PLUS_CRC ACT 0 12h40 5 6 6 6 5 PAYLOAD Component Command The PAYLOAD component command defines payload bytes for an HS packed demultiplexing across active lanes and including postamble and HS burst exit signaling For example PAYLOAD 12345 is short hand for HS_BYTES_PLUS_CRC DEMUX 12345 POSTAMBLE HS_BURST_EXIT Note also that the Send Cmd To File not yet implemented option allows any single command non macro non DCS WriteMemory non video command to be sent to a file rather than to hardware The format of this file is ASCH text suitable for editing and re sending to hardware via the File command 5 6 6 7 LPDelay The LPDelay command is a low level command that allows the user to assert a particular LP state on all lanes of the CPhy bus for a specified period of time This command is generally used in a macro sequence Page 29 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 The LPDelay comand has two arguments e Delay us the length of time to hold the bus in the specified LP state This value is floating point e LPValue 15 0 value encoding the LP states for all four lanes as described in section 3 6 5 6 6 8 Delay To Pos The Delay To Pos command is eq
12. LP000 1 LP001 4 LP100 and 7 LP111 The wire order for LP symbols is ABC e g LP100 represents wire A at LP high voltage and wire B and wire C at LP low voltage Table 3 LP States LP State Value LP State 0 LP0OO 1 LPOO1 2 LPO10 unused LP state 3 LPO11 unused LP state 4 LP100 5 LP101 unused LP state 6 LP110 unused LP state 7 LP111 Some commands encode the LP state for all four lanes as a 16 bit hex value The argument name for this value is LPValue 15 0 For this argument each nibble of LPValue contains the LP state for a corresponding lane as follows LPValue 2 0 LP State for lane 0 LPValue 6 4 LP State for lane 1 LPValue 10 8 LP State for lane 2 LPValue 14 12 LP State for lane 3 Page 8 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 4 Operational Concepts 4 1 Pattern Generator PG As previously mentioned prior MIPI solutions offered by The Moving Pixel Company have used a general purpose pattern generator PG3A and a MIPI specific probe P331 P332 P338 for DPhy stream generation The P339 CPhy Generator streamlines this architecture by incorporating the pattern generation function into the instrument Thus the PG3A is no longer required However this document and the CPhyGenCtl software still refer to the PG as a distinct internal component of the CPhy Generator For example the status pan
13. Window Configuration Controls 00 0 0 eccceesceceseeeceeeeeceeeeeceeeeeeeaeees 13 5 4 2 Instrument Configuration Dialog 0 cee ceeececeeececeeeeeceeeeeeeteeeeseeeenaeeees 14 5 5 CPhy Timing Configuration ccscccssssccsssscssssccssssccsssscssssscssssscsssessesees 17 5 5 1 UI UE 17 5 5 2 EE B S TIMIN S Suriin esgus ea TEREE RE T E SaS 18 5 5 3 TOR Length Registers aeina a e a ascends 19 5 5 4 Lane Delay Enable vis sicccdissicg atesevsiciss yaacasancadsaseanaate NEEN gddN 19 5 6 RON E 19 5 6 1 Defining a New Command siccsisccdcasisccsaccssiccetensgeasteausecctesusead es casodataaenacns 19 5 6 2 K NT DEE 20 5 6 3 Editing an Existing Command DEE 20 5 6 4 Managing Commands renaming ordering deleng 21 5 6 5 Saving Restoring Command Configurations s ssseesseesssessersseresseeessees 21 5 6 6 Special Command NK TE 21 5 6 6 1 Eerad eege 21 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 DEE Macro Commands ageet Sege eidele egeg 21 5 6 6 3 Variable Argument Commands ee eeeececescecesececeeececeeeeenteeeeeaeees 21 5 6 6 4 Long Data File Format Commande 22 5 6 6 5 DCS WriteMemory EHS 22 5 6 6 0 gt E eeh NEE 24 5 0 6 7 LPDelay 19 e2eiu egene getderee a nie aude aie iS 29 5 0 6 8 Delay KEE 30 DIG Mark Zro Possen ian a a a cau a 30 50 010 Wat Er ENEE 30 5 6 6 11 Assert Rer 30 5 6 6 12 Cmd Insertion Pointi scssrsiesssrnuic nan an DEER 30 56013 EE 31 506
14. by the CPhy specification for TGR and PRBS test modes Following the HS burst entry sequence all active lanes begin looping on a specific pattern based on the command and its arguments see below As with any other looping command control is returned to the user while pattern loops continuously with PG status indicating that it is running and the Stop PG button enabled Pressing the Stop PG button requests that the looping command exit For the TGR and PN commands the exit sequence consists of the HS burst exit sequence for all active lanes using the current CPhy timing settings The only difference is that the Postamble sequence is replicated by the TGR Post Length setting plus one as defined by the CPhy specification for TGR and PRBS test modes Note that the TGR and PN commands cannot be sent in a macro 5 7 1 TGR Data Sequence The TGR Data Sequence has one command argument Params that accepts a variable length list of hex bytes The CPhy specification describes the TGR pattern as consisting Page 32 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 of exactly 2 bytes but CPhyGenCtl extends this implementation supporting an arbitrary list length as long as it contains an even number of bytes On the CPhy bus looping TGR data bytes are pair wise converted to CPhy symbols then mapped to driver states as they are output Thus the looping list of N bytes is converted to 7 N 2 lo
15. frame timing and CPhy timing configurations are set and desired options are checked commands may be sent to the CPhy Generator for output Unnamed commands are sent by simply selecting the command PktType filling in the command arguments and clicking the Send button Named commands once defined can be sent by selecting the command name from the Cmd Name drop down control and clicking the Send button Finally if a named command has been assigned to a button left clicking the button outputs the command on to the CPhy bus After the user requests a command to be sent messages in the status bar will update progress During this time CPhyGenCtl performs the following tasks Page 47 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 e The command is parsed and any necessary external file data imported and decoded in the case of BMP files e MIPI protocol packets are built along with any necessary signaling structures i e SOT EOT BTA etc e Packet data is packed into internal data records and a play sequence is constructed for the CPhy Generator to use during output e Data records and play sequence are downloaded to the instrument e The instrument is Run initiating output and control returns to the user at this point Sending of the command is complete e However if the command is a looping command or contains event wait component commands the CPhy Generator continues to run Informati
16. normally this is set to zero this control allows logical lane 1 2 or 3 to be output on physical lane 0 as well Note however that contention detection always is associated with physical lane 0 regardless of logical mapping Phy Lane 1 Src sets the logical source lane for physical lane 1 While normally this is set to one this control allows logical lane 0 2 or 3 to be output on physical lane 1 as well One use of this control is to duplicate lane 0 traffic on lane 1 for separate scope monitoring during single lane mode communication Phy Lane 2 Src sets the logical source lane for physical lane 2 While normally this is set to two this control allows logical lane 0 1 or 3 to be output on physical lane 2 as well Phy Lane 3 Src sets the logical source lane for physical lane 3 While normally this is set to three this control allows logical lane 0 1 or 2 to be output on physical lane 3 as well Page 16 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 5 5 CPhy Timing Configuration The CPhy Timing Configuration Dialog provides controls for the user to specify various aspects of CPhy bus behavior General categories of controls are e Per lane symbol sequence settings for preamble postamble sync and sync2 name used to refer to the sync sequence preceding the second PH e CPhy bus timing registers e TGR length registers e Lane delay enable CPhy Timing Configuration Id
17. obtained from The Moving Pixel Company to the application directory The license file enables CPhy operation and perhaps other options in the future based on the serial number of your CPhy Generator Note that the software may be installed on and the license file copied to multiple host machines If a license file or the correct license string in the license file is not present the software can still run in offline mode This mode allows the user to interact with the GUI define and save commands and develop RPC applications without connecting to real hardware 2 2 Connecting the CPhy Generator The CPhy Generator is easily set up e Connect the 24V power supply adaptor to the instrument e Connect a USB3 or USB2 cable from the host machine to the instrument e Connect your DUT to CPhy lane outputs via SMA cables e Power on the instrument Page 3 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 Figure 1 P339 CPhy Generator Back Panel Pinout For a description of the P339 CPhy Generator hardware please see the P339 datasheet For reference in this document the back panel pin out is shown in Figure 1 Currently the pins used on the back panel connector and their functions are e Evtl represents an OR of all the six lane 0 contention flags e GPIO used as external event in e Clock Out replicated TrigOut signal from the front panel SMA Remaining signals on the connec
18. option brings up the CPhy Timing Configuration dialog allowing the user to enter custom CPhy timing parameters and configure CPhy signaling symbol sequences such as preamble sync and postamble o Configure WriteMemory commands this option brings up the ConfigWriteMemory dialog for configuring whether and how a long DCS WriteMemory command is partitioned into multiple WriteMemory commands see section 5 6 6 5 for more information Page 55 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 o Set GUI Options this option brings up a dialog for setting GUI options which allow the user to selectively enable common warning messages o Set Colors this option is only available on CPhyGenCtlForP338 When selected the Color Options dialog is shown allowing the user to change colors of various elements of the GUI o Start Recording begins a script recording of MIPI commands sent to the DUT See section 5 11 6 for more details o End Recording ends script recording o Write Current State writes all configurable state as RPC commands to the current script recording file this options is only enabled during script recording o Help displays this manual as a help file o Help RPC displays the RPC help manual o About brings up a summary window displaying the current software version This dialog also includes a summary of release notes of changes fixes for each versi
19. or via an RPC programmatic command are entered into the macro instead of immediately sent to the CPhy Generator Figure 10 shows an example of a macro in edit mode 10 Note if the current Cmd Name is a macro then the list box will be initialized with the macro s component commands If unwanted the Clear All button can be used to delete them Page 43 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 E CPhyGenCtl CSIConfig1 cfg File Connect Standard Options Eke tal Example Macro PkiType Null Packet Blanking Packet DCSCmdDese DT Mode BTA ES Macro Macro Cmds Clear All 0 LP Delay 1 Frame Start Offine 1 2 0 0 Moving Pixel Figure 10 Macro Editing Commands are inserted into the macro at the location highlighted in the macro pane When inserted a dialog will pop up to name the component command of the macro The user can scroll and select a command or the blank line at the end of the command list to mark the next command insertion location Selecting a command also displays its arguments for viewing and modification Five buttons are available in the macro pane to manipulate the component commands of a macro Clear All removes all the component commands in the macro Delete removes the selected component command from the macro Rename brings up a dialog to rename the selected component command Up moves the selected component command up within the comm
20. path If the filename is relative its path is considered to start from the same directory as the text file containing the command using the argument o Arguments in brackets are optional 5 6 6 6 2 Lane Group Arguments This section describes the meaning of the lane group arguments ACT This argument causes the element stream associated with the command to be duplicated and assigned to each active lane For example if lane count is two the following command assigns the same three byte stream AA BB CC to lanes 0 and 1 HS_BYTES ACT AA BB CC DEMUX This argument causes the byte stream associated with the command to be demultiplexed two bytes at a time across active lanes Padding bytes of 0 are appended to the stream to align all lanes to the next even byte boundary For example if lane count is three the following command HS_BYTES DEMUX 1234567 assigns bytes to lanes as follows lane0 1270 Page 27 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 lane 1 3400 lane 2 5600 0 1 2 3 These arguments designate a lane assignment for the element stream associated with the command If the lane is not an active lane the command is ignored If this argument form is used identical commands with the same sequence length must be present in active lane order For example if lane count is four a legal command sequence would be HS_BYTES 0 1234 HS_BYTES 1 a
21. which describes the naming convention used to generate different test patterns Test Pattern Naming Syntax x SOLID_ lt R gt _ lt G gt _ lt B gt Single color image with lt R gt lt G gt lt B gt components RAMP_ lt hvmask gt _ lt rgbmask gt Horizontal vertical or diagonal ramp in R G and or B RAMP_ lt hvmask gt Monochrome horizontal vertical or diagonal ramp RAMP Monochrome horizontal ramp GRID_ lt on_cnt gt _ lt off_cnt gt _ lt solid_line_cnt gt _ lt var_line_cnt gt Monochrome grid GRID_ lt on_cnt gt _ lt off_cnt gt Monochrome h v symmetric grid lt R gt lt G gt lt B gt amp bit color values lt hvmask gt 2 bit integer bit enable horizontal bit0 enable vertical lt rgbmask gt 3 bit integer bit2 enable red bit enable green bit0 enable blue Figure 8 Test Pattern Syntax Dialog Note for CSI Raw lt N gt video commands image data is converted according to the Encode Raw Data as Bayer option setting Options menu Page 36 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 A single solid color frame is generated with the syntax SOLID_ lt R gt _ lt G gt _ lt B gt For example to generate a full frame consisting of the single color with red 100 green 150 and blue 200 8 bit values enter solid_100_150_200 as the filename of the video mode or WriteMemory command A horizontal vertical or diagonal ramp can be generated wi
22. 014 scape Command EE 32 5 7 Special Phy Commands seessesccosesooesooosseccsoccccosesoossocossocecoseccosessessosossssssoseeo 32 SECH tree Ee 32 5 7 2 TGR Symbol Sequence edd EEN e i aiaa 33 5 7 3 TER Stale EE EE a A E SERA 33 5 7 4 EIERE E ots nee E E aaeben Cars 33 5 7 5 PRESTI SeU CE a he ee 34 5 7 6 PRES 1S EE EEN 34 5 7 7 ULP EE 34 5 8 Video Mode Commands e eeseesessossesossossesessoesossossesossossesossossossosossossosssssesssse 35 5 8 1 AT 35 5 8 2 Video Command De MnO 30 9235p ess cosas cssesns sedi eevcaegs aces ae oecaa ease thee 35 Peo Test Pattern SUpport meon EE 36 5 8 2 2 Using Motion Video Sources siiisciccccisecassachcatneassaccsshaccaesseasadevaestcaeee 37 5 8 2 3 EN e TEEN EE 37 5 8 3 Frame Timing Llegir 38 5 8 3 1 Frame Timing Configurations cecccceesceceecceceeeeeceeeeeceeeeeeseeeenaeeees 39 5 8 3 2 Frame Parameter Controls TEE 39 Seet Frame Timin Controls inre EA eg 39 5 8 3 4 CSI Frame Construction Controls c ccsscsssescssssscsssenssesensessecsscncees 40 5 8 3 5 DSI Frame Construction Controls cceeecceceeeceeseeeeceeeeeceeeeeeeneeeenaeees 40 5 8 3 6 Common Frame Construction Controls sssessssssessseeesseeesseessresseessee 41 5 8 4 Video Frame Construction Details ccssscccssscscsescesseccscnscesneeseensees 41 SSA Command Insertion E 42 5 8 4 2 Video Memory Reourementz 42 e OG E 43 5 9 1 Defining a new MACIO ssy ccisescassas EEN ss cvecnadhonaceubacee
23. 1 for 1 5 us WriteMemoryContinue with RGB888 image data bytes 30000 59999 LP11 for 1 5 us WriteMemoryContinue with RGB888 image data bytes 60000 89999 LP11 for 1 5 us WriteMemoryContinue with RGB888 image data bytes 90000 99999 LP11 for 1 5 us 5 6 6 6 File Command The File Command is general purpose low level command that uses a text file as input to define arbitrary LP and HS CPhy signals A special syntax is used to allow signal definition for CPhy lanes with support for higher level protocol segments including automatic CRC generation automated HS burst segment generation e g HS entry exit preamble postamble and sync and packet data demultiplexing Raw CPhy state sequences CPhy symbol sequences and packet data bytes can be intermingled as desired to create user test sequences and error packets The File Command can be found under the Miscellaneous Commands category in the PktType drop down of the GUI and has one argument DataFileName that specifies the source text file name to parse and use to construct the CPhy signal The command is sent like any other normal command and can be part of a macro The DT Mode is ignored when sending the File Command but other GUI settings such as the HS Sym Rate LP Freq Lane Cnt and CPhy bus timings may affect the output depending on the component commands in the file The file used for the file command is a form of script file Each line can be one of the following 1 Command lin
24. 6 6 13 BTA BTA bus turn around is a handshake protocol to transfer bus ownership to the DUT This protocol is only applicable in DSI Read commands by default have their BTA argument set to Yes and this argument can be set to Yes by the user for other commands as well When BTA is set the BTA signaling sequence is appended to the command In addition a BTA sequence can also be sent on its own without accompanying data by selecting Send BTA in the PktType field of the command After a BTA sequence is sent the CPhy Generator suspends program output and places its drivers in high impedance until it receives a return BTA sequence from the slave DUT or times out When a return BTA sequence is seen on the bus the instrument drives a BTA acknowledgement sequence and then resumes program output In the event of a BTA timeout the instrument resumes program output without sending a BTA acknowledge This wait for BTA process can be initiated without first sending an initial BTA sequence by using the Wait For BTA command This command does not transmit any data on the bus but simply drives high impedance and waits for a BTA sequence from the slave DUT or eventually timing out Notes e These commands are most useful when embedded in a macro with other MIPI commands Component commands in the macro following a Send BTA or Wait For BTA are not output until the return BTA is recognized or the BTA timeout has expired
25. Al Lanes Common CPhy Symbols Modified Default Lane 1 Save SymCnt DS jo Za De D Des DS jo DR ai ai ns Setting TLPX Actual ns Cancel nou uw tou Figure 6 CPhy Timing Configuration Dialog 5 5 1 Symbol Sequences Each lane has entries for defining the symbol sequences for various protocol segments of the HS burst CPhy typically allows for the definition of only one of the sequences User Preamble and if defined requires that it be 14 symbols in length For low level testing however CPhyGenCtl allows other sequences to be set to non standard values or sequence lengths The text boxes defining these sequences consist of one or more symbols separated by commas Associated with each sequence is a read only text box that displays the number of symbols in the sequence SymCnt The following protocol segments can be defined for each lane Page 17 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 1 Start Preamble the first symbols sent for the HS burst preamble This sequence is also replicated by TGR Pre Length 1 for TGR and PRBS packets as according to the CPhy specification CPhy declares that this sequence should consist of seven 3s 2 User Preamble the next symbols sent for the HS burst preamble This sequence is optional in the CPhy specification but if present is declared to be 14 symbols in length 3 End Preamble the final symbols
26. C contention detected on lane 0 wire C when transmitting LP Once contention is detected flags are held until a subsequent command is sent or the Status Reset button is pressed to clear state Note also that the aggregate contention state is reflected on the Evtl signal of the instrument back panel see section 2 2 allowing for instrument trigger on the onset contention 5 11 2 2 DUT Response When a command or macro containing a BTA is sent the CPhy Generator monitors the link for an LPDT response command from the DUT The DUT response if any is displayed in the status pane of the main window as the string DUT Resp followed by the first number of hex data bytes If the response contains more than about 10 bytes a button labeled with an ellipsis will appear that the user can click to view the entire response data in a dialog Note that if the program is looping DUT response data will not appear until the program is stopped or the user clicks the Get DUT Resp button Note that the first byte is special containing only the first two bits captured from the DUT and should always be Olh These bits represent the escape entry bit pattern LP100 LP000 LP001 LP000 Subsequent bytes represent bits obtained after escape entry starting with the escape command which is expected to be 87h for an LPDT command Thus the first header byte of the DUT response packet will be in the third byte of the displayed DUT response dat
27. CPhyGenCtl Main Window 5 1 GUI Overview Most of the interaction between the user and DUT occurs in the CPhyGenCtl main window see Figure 2 It has several distinct sections Page 10 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 e The left pane of the main window allows the user to define commands and their arguments naming them to allow for later recall and sending to the CPhy Generator as well as assigning them to command buttons e The right pane of the main window consists of 30 command buttons that can each be individually associated with a defined command allowing single click sending of command commands to the CPhy Generator e The bottom left pane of the main window provides controls for configuring parameters of instrument transmission video timing definitions physical characteristics of the CPhy bus and trigger events e The bottom right pane of the main window comprises instrument status and operational controls e The status bar at the bottom of the main window displays informational and error messages and indicates the current instrument connection and software firmware versions The following sections describe more details of CPhyGenCtl operation 5 2 Generic List Dialog A generic List dialog is used to organize named item lists associated with a drop down control Named items are listed in a central list box with controls on the side to manipulate items in the list The
28. CSI layout of the Frame Timing dialog Configuration HSyne pox HBPorch pax HFPorch po HActive pax HTotal pox Use LS LE Frame Numbenna Line Numbering HSynec Blanking HBPorch Blanking HFPorch Blanking Vertical Blanking Save VSyne lines VBPorch lines VFPorch flines VActive fines 1030 VTotal lines Line Time us PixCik MHz Frame Hate Hai 24 0000 HS Sym Rate M Note all vertical intervals are FRAME based even interlaced formats Cancel Figure 9 Frame Timing Dialog CSD Page 38 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 5 8 3 1 Frame Timing Configurations At the top most part of the Frame Timing dialog is a configuration drop down control along with two buttons labeled and Save These controls are used for named configuration management as follows Configuration drop down control showing pre defined and user defined configuration names Selecting a configuration name fills in its definition in the remaining frame timing dialog controls Pre defined configurations contain example settings for common frame dimensions However please be aware that these configurations may not work for all combinations video formats and lane counts because of legal timings depend significantly on these parameters vn button to launch a List dialog to manage named frame timing configurations i e rename reset reorder d
29. Ifa macro contains multiple command insertion points an inserted command will be output at the next encountered insertion point Unless sequencing is controlled via external events the user has no practical control over which command insertion point is used for the inserted command 5 11 4 External Event Input Triggering The option Wait on external event to start allows users to configure the PG to wait for an external trigger event before outputting any command including video mode commands When this option is enabled commands that are sent do not immediately output on the CPhy bus Instead while the stream is prepared and downloaded to the instrument as usual output is held off until a rising edge logic level 0 to 1 on the input event line Evtl is seen Once this edge is seen the command is output The latency of the event signal is symbol rate dependent but is on the order of 100 ns Independent of this option the external event input can also be used as a method to pause output held in a specified static LP state while playing a macro The command to use for this function is Wait Ext Event see section 5 6 6 10 5 11 5 Causing Packet Errors The CPhyGenCtl GUI supports the ability to modify a packet s PHCRC and CheckSum fields to cause receive errors in packets Normally when a packet type is selected for a command in the main window and its parameters are filled in read only fields are displayed s
30. List dialog supports the follow functions Table 4 List Dialog Functions Function Method Clear the list Click on the Clear button Sort the list alphabetically Check the Sort checkbox Reset the list to its default Click the Defaults button Delete items in the list Select one or more items in the list and click the Delete button Move item s up in the list Select one or more items in the list and click the Up button Move item s down in the list Select one or more items in the list and click to Down button After viewing and or modifying the list clicking OK closes the dialog and records any changes Clicking Cancel closes the dialog and discards any changes to the list A List dialog is associated with three controls in CPhyGenCtl e Cmd Name control in the main window e Frame Timing Configuration control in the Frame Timing dialog e CPhy Timing Configuration control in the CPhy Timing Configuration dialog Page 11 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 Immediately to the right of each of these controls is a button labeled with an ellipsis Clicking this button brings up the List dialog initialized with element names from the associated control Figure 3 shows an example Frame Timing List dialog Figure 3 Frame Timing List Dialog 5 3 Connecting to the CPhy Generator Before any commands can be sent the CPhyGenCtl application need
31. The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 h a Z FIRII Ca CPhyGenCtl User s Manual A P i Page i The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 1 2 Table of Contents 0AA A EEEE E E E A aE E E E 1 TE EE EE 3 2 1 Installing CPi y Ger e eege Geer DEENEN 3 2 2 Connecting the CPhy Generator cccccscossssssssssssssssssssssssssssssssssssssssssssess 3 2 3 Quick Start HEIEREN 4 Common Command Data and Element Types scccssssscesssscessccsesscsssscssssscessaces 6 3 1 l EA A P EE PRA EEEE OE EEA EEEE E ET 6 3 2 Ire 6 3 3 Byte or Integer E 6 3 4 CPhy HS Symbols EE 6 3 5 CPhy HS SUGGES geed 7 3 6 CPR LP EE 8 Operational Concepls ereis ieai e a a as eae aiee Nee 9 4 1 Pattern Generator PG seseseessssosooooeoeesssssosooooceesesosooooeocesessosoooocosessososooeoseesse 9 AD CPhy Bus EE E 9 Using CPhyGenCtl ossiciareeersesrssessresisssieseier Nenade ioi asiendo asaini seris iano ei atasko cones 10 5 1 CUE OV GE VICW 5 ies sues sede cectetaudsownschuecslcuvetuen valaneusebonduenssshunesensssuentudsheuiatoncroutschenes 10 Sez emer List Diallo aii wtesticisctesssece acs netniscaneenc ae ae eee sossa eis Si 11 5 3 Connecting to the CPhy Generator scsssscssssscssssccsssscssesscessescessecsesees 12 5 4 Instrument Configuration ccsccssssccssssccsssccssssscssssssssscssesscsssesssssessosees 13 5 4 1 Main
32. a The DUT response buffer is reset every time a CPhyGenCtl command is sent but this could consist of a macro with multiple read commands The response buffer is relatively large 4 Kbytes and thus can capture a significant amount of data from multiple reads which are simply concatenated in the buffer Page 49 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 To facilitate parsing of data from the DUT response buffer an additional flag is added 0x100 to the data bytes to indicate anew BTA Thus the first response byte from each command should now start with 0x101 Note there are two RPC commands that can be used to obtain the DUT response e GET_DUT_RESPONSE can be used programmatically to obtain the last response from the DUT e SAVE _DUT_RESPONSE can be used either in a script file or programmatically to save or append the last response from the DUT to a text file Please see the CPhyGenCtIRPC manual for more information 5 11 3 Command Insertion not yet implemented Command insertion is the ability to insert commands into an actively looping stream whether in a video mode command or macro While video mode commands automatically define an insertion point in the first vertical blanking line of a frame the user must explicitly define an insertion point in a macro denoting the location where the inserted command should output The Cmd Insertion Point command is used for this purpo
33. a sub menu to the button e Remove Assignment removes the current command assignment from the button e Remove All Assignments on Current Cmd Page removes all command assignments from all 30 buttons on the button page e Remove All Assignments on All Cmd Pages removes all command assignments from all button pages e Set Button Tooltip sets a tooltip string to display when the mouse hovers over the command button To clear the tooltip set the tooltip to the empty string Note that removing a button assignment also clears the tooltip string e View Current Cmd fills in the argument field controls with values associated with the command For a macro argument fields for the first component command in the macro are shown In addition the Macro tab is selected and the macro command definition is shown as read only e Edit Current Cmd for non macro commands this command is identical to View Current Cmd For macros in addition the macro command definition is brought up in edit mode Note that unlike application settings such as option settings CPhy timing definitions frame timing and instrument configuration settings command definitions and button assignments are not automatically saved when the application closes Instead command definitions and button assignments must be saved explicitly to a configuration file using the Save Cfg menu option File menu 5 11 Operation 5 11 1 Sending a Command Once the CPhy Generator instrument
34. aled if necessary and converted to the correct format for the associated video command e A file having any other extension This file should be a binary file having at least the number of bytes required by the current timing configuration That is HActive VActive BytesPerPixel In this case bytes are read in and treated as video data in the correct format for the associated video command e A test pattern name as described in the next section To play a sequence of multiple frames the data file name may reference the first frame of the sequence and have the following format lt name gt lt index gt lt ext gt where lt name gt is an arbitrary file name lt index gt is an integer and lt ext gt is the file extension CPhyGenCtl will derive the file names of subsequent frames automatically by incrementing lt index gt For example if c framel bmp is specified as the data file name and the frame count is set to four CPhyGenCtl will look for the files c frame 1 bmp c frame2 bmp c frame3 bmp and c frame4 bmp 5 8 2 1 Test Pattern Support Special file names can be used to generate test patterns rather than specifying an image file name Simple solid color frames basic ramps and grids can be generated using special filename conventions In order to aid usage press Alt t to bring up the Text Pattern Syntax dialog Figure 8 Test Pattern Syntax DialogFigure 8 shows this dialog
35. and sequence Down moves the selected command down within the command sequence Page 44 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 When macro definition is complete the user clicks on the End Macro button bringing up a dialog to name the macro save it and exit macro mode the user may also Cancel to return to macro editing or Discard Edits to exit macro made discarding any edits entirely As with command definition if the user specifies the same name when saving a macro the user will be asked for permission to replace the existing macro definition 5 9 2 Editing an Existing Macro To edit and existing macro the user has two options If the macro is assigned to a command button the user may right click on it and select Edit Current Command Alternatively the user can select it in the command combo box at the top of the main window then click on the Start Macro button The macro can then be edited as normal and saved by clicking on the End Macro button The name field will be filled in with the original macro name and the user can click OK and confirm overwriting the existing macro 5 9 3 Copying a Macro To copy a macro simply load a macro for editing click on the End Macro button and replace the original name with a new name 5 9 4 Editing a Component Command To edit a component command of a macro perform the following 1 Open a macro for editing
36. ation takes advantage of the fact that hardware outputs a mid HS level when outputting LP111 or LPOOO symbols in HS mode As a result of enabling lane delays the HS Prepare time will nominally end in a 15 ns period at mid level HS voltage Similarly the HS Exit time will nominally start with a 15 ns period at mid level HS voltage This waveform modification should still result in legal decoding of HS bursts by a receiver with the benefit of being able to skew individual lanes relative to each other by up to 15 ns 5 6 Commands 5 6 1 Defining a New Command Commands are defined using the left pane controls of the main window and are grouped based on the current standard according to category Thus before defining a command the user should select the desired protocol via the Standard menu currently either CSI or DSI Then to define a new command perform the following steps 1 Select the command type via the PktType drop down control Note that once a command field is edited the label in the CmdName box changes to lt New Cmd gt and MODIFIED appears below the command fields to prevent confusion with any existing command definition Note that actual lane delay settings are located in the Instrument Configuration dialog via the Inst Cfg button in the main window Page 19 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 2 Ifthe command type is a DCS command from the DSI comman
37. available One recommended shareware tool is Advanced X Video Converter http www aoamedia com videoconverter htm This tool is inexpensive and very straightforward to use and image files extracted using this tool adhere to the required naming format for video sequences in CPhyGenCtl 5 8 2 3 Image Viewing Dialog An image viewer is built into the the application to view image files used in video and DSI WriteMemory commands The viewer can be invoked by pressing Alt i causing the image file if present of the current command to be displayed in a separate image window Note that this also applies if the filename is the name of a test pattern which is Page 37 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 a convenient way to see that the pattern name syntax is correct If the image size is large it is re scaled to a reasonable viewing size Press Return or click OK to close the image window 5 8 3 Frame Timing Dialog The Timing Cfg button in the main window brings up a dialog to set your MIPI device frame timing parameters The parameters in this window are used to configure video playback during video mode Depending on the current MIPI protocol DSI or CSI the dialog will look a little different In particular CSI has options related to enabling line start line end packets whether to use frame and line numbering and disables front back porch timing Figure 9 shows the
38. bcd HS_BYTES 2 11 12 11 12 HS_BYTES 3 a3 b2 c1 d0 Note this command sequence would also be legal for lane count lt 4 where inactive lane commands would be ignored 5 6 6 6 3 LP STATES Component Command The LP_STATES command has two forms The first form uses the ACT argument which indicates that data values are singular LP states and will be duplicated and applied to all active lanes inactive lanes remain in LP111 The second form does not have the ACT argument which indicates that data values are treated as 16 bit hex values with each 4 bit nibble representing the LP state for its associated lane bits 3 0 gt lane 0 bits 7 4 gt lane 1 etc Both forms of the command have an optional argument to indicate an integer duration in ns for each LP state in the sequence If this argument is not present 1 LPFreq is used for the duration For example the following represents the HS burst entry sequence on all active lanes at 10 MHz LP_STATES ACT 100 710 To output the HS burst entry on lane 0 2 regardless of the number of active lanes and using the current LPFreq setting discard the ACT parameter and use 16 bit values that describe the LP state for each lane Page 28 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 LP_STATES 7777 7111 7000 5 6 6 6 4 PH Component Command The PH component command defines 4 bytes to use in constructing the PH for an
39. be constructed prepended with the DCSCmd byte Otherwise long packets will be constructed and you will see additional read only fields for the packet length and checksum appear The Params argument string consists of byte values separated by white space or commas As with other argument fields values are assumed to be decimal unless appended with h hexadecimal or b binary For example 30 41h 10101b is a legal parameter string 5 6 6 4 Long Data File Format Commands Certain non video packet types e g Long Pkt Non Image Data Generic Long Write DCS Long Write have a DataFileName argument For these commands the file is treated simply as a binary file Note that the File Command has a special ASCII text file format described further in section 5 6 6 6 With the exception of DCS Write Memory commands the entire file is sent in a single long packet The WriteMemory commands have special support in CPhyGenCtl because these commands are often used to send video data to a frame buffer on the DUT The next section describes this support 5 6 6 5 DCS WriteMemory Commands For the Write Memory Start and Write Memory Continue commands the WriteLen argument specifies the number of bytes to send and the FileOffset argument specifies the starting byte offset in the file or frame buffer IMPORTANT the parameter name FileOffset is misleading when using BMP files and the video format is not RGB888 The parameter would bette
40. be different than the main window HS Sym Rate setting if it has been changed during program output Page 14 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 Instrument Configuration Id Common HS Voltage OK Cancel Defaults Figure 5 Instrument Configuration Dialog HS Low High Voltage Controls these controls set the unterminated HS voltage levels for CPhy lanes When connecting to real hardware HS voltages generally should be set to 0 0V low and 0 4V high Slave termination resistance will reduce HS levels to the expected swing of 0 1 0 3V HS voltage limits are 0 6V and 1 2V HS Delay Controls these controls set the relative delays of each lane Delays controls are only enabled when the user has checked Enable Lane Delays in the CPhy Timing Configuration dialog Options gt Configure CPhy Timing This is because programs must be built appropriately to support delay adjustment and so must be statically enabled When enabled delay adjustments are in ps and have a range of 0 to 15000 ps Values are quantized according to equations related to the HS symbol rate For example at rates above 1500 Msps only integer symbol delays are supported For rates between 750 and 1500 Maps L symbol delays are supported For rates between 375 and 750 Msps 4 symbol delays are supported And so on Page 15 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16
41. d First interlace fmts selecting this option causes the causes the top field i e lines 1 3 5 of the image to be sent before the bottom field i e lines 2 4 6 when sending interlaced video Otherwise the bottom field is sent before the top field 5 8 3 6 Common Frame Construction Controls Common frame construction options for both CSI and DSI indicate the method to be used for blanking segment implementation HSync Blanking this control allows the user to specify whether to implement the HSync blanking period via LP111 or an HS blanking packet A third option is Auto which implements the blanking segments via LP111 unless it is too short in which case the segment is implemented with an HS blanking packet HBPorch Blanking this control disabled for CSI allows the user to specify whether to implement the HBackPorch blanking period via LP111 or an HS blanking packet A third option is Auto which implements the blanking segments via LP111 unless it is too short in which case the segment is implemented with an HS blanking packet HF Porch Blanking this control disabled for CSI allows the user to specify whether to implement the HFrontPorch blanking period via LP11 or an HS blanking packet A third option is Auto which implements the blanking segments via LP111 unless it is too short in which case the segment is implemented with an HS blanking packet Vertical Blanking this control allows the user to specify w
42. d according to the MIPI specification based on the command arguments Note that video commands do not fill in these fields because they do not represent a single packet 5 6 2 Naming a Command Once a command is defined the command may be named so that it can be assigned to a command button and saved in a configuration file To name a command click on the Save button to bring up a dialog to enter the command name In the Name Cmd dialog the command name field is initialized with the original command name present before editing This allows the user the option to simply click OK to replace the original command Otherwise type in a new name to create a new command Named commands show up in the Cmd Name drop down box of the main window Selecting a named command in the list fills in the argument field controls with values associated with the command 5 6 3 Editing an Existing Command An existing non macro command definition can be edited as follows e Load the command field values into the edit controls either by right clicking on a button having a command assignment and selecting Edit Current Command or selecting the command name from the CmdName drop down control To modify read only fields the user can use the Send Cmd To File menu option File menu This outputs the command bytes to a text file that can subsequently be modified and resent using the File command Page 20 The Moving Pixel Company CPhyGenCtl User
43. d set i e DCS Short Write DCS Long Write or DCS Read Request the DCSCmdDesc drop down control will be enabled Select the DCS command type from this control 3 Depending on the command selected argument fields will be labeled and enabled for the user to enter values Certain arguments are pre filled such as the virtual channel DT Mode and BTA The user may change these pre filled values if desired 4 Commands that support sending either as a LP or HS command initially have their DTMode argument set to Default which means the command will be sent using the current default DTMode setting DT Mode control in the lower left of the main window Alternatively the user can specify the DTMode for certain commands by changing the DTMode argument to either LPDT or HSDT 5 Setting BTA to Yes requests that a bus turn around sequence follow the sending of the command This is usually used for read commands to allow the device under test to respond with data 6 Numeric fields are assumed to be decimal unless appended with h hexadecimal or b binary For example 67h 103 and 1101b 13 7 Certain derived fields of the command will also be displayed in read only text boxes DataID WordCount PHCRC CheckSum The PHCRC and CheckSum fields can be modified to cause packet errors by ticking the checkbox associated with the field The other read only fields cannot be modified directly by the user but are compute
44. describes common data and element types and how to specify them 3 1 Bytes Bytes are 8 bit integer values ranging from 0 to 255 and can be specified in decimal or hexadecimal Unless otherwise specified for a particular command the default radix for command byte arguments is decimal If a command indicates it uses hex byte arguments then the default radix is hexadecimal To explicitly define the radix of a data byte append either a d for decimal or h for hexadecimal For example the following list describes a 4 byte sequence from 16 19 inclusive 16 11h 18d 13h 3 2 Integers Integers are 32 bit signed integer values and can be specified in decimal or hexadecimal in which case the value is always non negative Unless otherwise specified the default radix for integer arguments is decimal To explicitly define the radix of an integer append either a d for decimal or h for hexadecimal For example the following list describes a 4 integer sequence from 256 259 inclusive 256 101h 257d 103h 3 3 Byte or Integer Lists Some commands allow parameters to be byte or integer lists These lists are specified by one or more byte or integer values respectively separated by spaces see previous two sections for examples 3 4 CPhy HS Symbols CPhy HS symbols symbols in this document are defined in the CPhy specification and are represented by integers ranging from 0 4 inclusive In addition in CPhyG
45. e A command line always begins with the symbol followed by a space followed by the command and any arguments separated by spaces The command and arguments always use only one line 2 Data line A data line consists of one or more hex data values separated by spaces e Multiple data lines can be used to form a longer sequence of data values e Concatination of data lines occurs to form one data sequence until the next command line or end of file Page 24 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 e A data sequence is always associated with the preceding command e Depending on the associated command data values may represent data bytes HS symbols HS states single lane LP states or 4 lane LP states 3 Comment line or blank line Lines that start with or that are blank with only spaces or tabs are considered comment lines and are ignored by the parser In constructing the bus output stream the file associated with the File Command is parsed in sequence one line at a time one component command at atime After parsing the entire file the result is a single output stream that is then sent on to the CPhy bus looping if enabled If the File Command is sent stand alone i e not in a macro it should assume the initial bus state is LP111 in all lanes Similarly after the command is sent the bus is forced back to LP111 In a macro the File Command begins at the las
46. e Sen Packed 18 bit RGB 6 6 6 OK Cancel Figure 7 Config WriteMemory Dialog Enable Partitioning CheckBox when checked partitioning is enabled and WriteMemory commands will be deconstructed into a sequence of WriteMemory commands according to the parameters in the dialog Otherwise WriteLen values greater than 64 KB will return an error Partition Length indicates the maximum length to use for component WriteMemory commands in the sequence LP11 Partition Interval indicates the amount of time to spend in LP11 between each component WriteMemory in the sequence Specify zero for no delay between component commands which also means the command sequence will occur in a single HSDT or LPDT burst BMP Decode Format specifies the format to decode files that have an extension of bmp These formats include e Packed 16 bit RGB 5 6 5 e Packed 18 bit RGB 6 6 6 e Loosely packed 18 bit RGB 6 6 6 e Packed 24 bitRGB 8 8 8 Page 23 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 As an example consider a WriteMemoryStart command issued with the following configuration settings Partition Length 30000 LP11 Partition Interval 1 5 us BMP Decode Format Packed 24 bit RGB 8 8 8 If the file specified has extension bmp FileOffset 0 and WriteLen is 100000 CPhyGenCtl will send the following sequence WriteMemoryStart with RGB888 image data bytes 0 29999 LP1
47. e in real time so you can see how colors interact To restore the default colors click on the Defaults button When you are done changing colors to accept the new colors click the OK button To discard your color changes click the Cancel button Color settings are saved on application exit and restored when the application is restarted 5 13 Menus This section outlines the menu commands available in CPhyGenCtl e File o Load loads a previously saved command configuration file overwriting any current commands and button assignments o Save lt fn gt saves the current command definitions and button assignments from both the CSI and DSI protocol sets to the current file lt fn gt Note that the command configuration file does not store application settings which includes PG configuration and Timing configuration settings o Save lt fn gt As same as the Save lt fn gt command above except a dialog appears to browse and enter a new configuration file name o lt recent files gt a list of the four most recent configuration files Selecting one of these file names loads the file o Clear Recent File List clears the most recent file list o Exit exits the application e Connect o Connect brings up the PG connection dialog see section 5 3 o Disconnect disconnects from the current PGAppDotNet server leaving CPhyGenCtl in offline mode o Enable RPC when checked enables CPhyGenCtl to accept and proces
48. e in the main window shows whether the PG is running or idle and buttons labeled Stop PG and Restart PG are used to control the CPhy Generator s internal pattern generator engine for transmission 4 2 CPhy Bus Behavior Once the CPhy Generator has been powered on and CPhyGenCtl is connected CPhy lanes are driven to LP111 This is the default state of the instrument whenever the PG is idle When commands are sent using CPhyGenCtl one or more lanes become active either transitioning to HS mode or signaling in LP mode depending on the command and the current DT Mode setting Generally the Lane Cnt setting determines which lanes become active though it is possible for the low level File command to send LP data on all 4 lanes independent of Lane Cnt The Options gt Loop Commands menu option determines whether commands are sent once or looped on the bus indefinitely If this option is not checked the command will be sent and then the bus will return to the LP111 state with the PG status indicating that it is idle Otherwise PG status will indicate it is Running while the command loops Some lower level phy commands inherently loop the PG regardless of the Loop Commands setting These include Enter Ultra Low Power Mode and the TGR and PRBS test sequence commands Looping commands can be stopped by clicking the Stop PG button returning the PG to idle state and the CPhy bus to LP111 Also unless comma
49. east long enough to accommodate the minimum length blanking packet While the desired timing characteristics of a video line is defined in the frame timing dialog actual timings of may slightly differ This is because of the complexity of constructing arbitrary packet timing given internal restrictions for storing and playing LP and HS symbols in the instrument 5 8 4 1 Command Insertion Note that video frames are automatically built with a command insertion point in the first vertical blanking line Command insertion is a special mode that allows most commands to be inserted into the program stream while the program is looping This function is also available for the user during macro looping using the Cmd Insertion Point command Please see section 5 11 3 for more information 5 8 4 2 Video Memory Requirements Memory requirements for the storage of video sequences in the CPhy Generator cannot be exactly described due to the complexity of encoding packing and outputting the program stream as well as numerous dependencies such as number of lanes video format frame timing and CPhy bus timing However in general a reasonable upper bound can be given based on HS symbol packing in the instrument s memory Basically the packing efficiency of HS symbols in memory is 75 regardless of the number of lanes Since the amount of memory in the CPhy Generator is 2 GB this means a maximum of 1 5 GB of memory could be available for video sy
50. eeaasaesativeesede 43 5 9 2 Editing an Existing Macro sccsccschcossestovaseqeystocsdeagseduedsuasedeydyedvemeghosaahesesntenss 45 5 9 3 CON VATS a MACO E 45 5 9 4 Editing a Component Commande 45 5 9 5 Allowed Component Commande 45 5 9 6 HS Component Command Behavior ecccccessceceeeeeceeeeeceeeeecseeeeenaeees 46 5 9 7 Additional Notes on Macro Behavior ceesceceeesceeeseeeceeececeeeeeceteeeenaeees 46 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 5 10 Command E ossessi ssn i oss 46 Die POE a0 PERITA A AE ISERE ETEA 47 STEL Sendinga Command noieeoe siria esaa a e dus ase ede 47 5 11 1 1 SOD EE 48 KOR Restart PG ET 48 SE EH eege eege 48 5 11 2 1 Contention Detector sea ea A A t 49 KORRIS EIER E EE 49 5 11 3 Command Insertion not yet implemented eee ee eeeeeeeeeeeeeeeeeteeeeeees 50 5 11 4 External Event Input Triggering reese Eege EE 51 SE WE DEE Causing P eket EE 51 5 11 6 Script Recording not yet implemented eee eeeeeeeeeeeeeeneeeneeeees 52 5 11 7 Updating Femme zetesaseelouueerg ageet ANNE dee 52 5 12 Customizing GUI Colors sssessossssccssccssocesocesoosesoeccsoeessocesocesoosssosessesssesesoeee 53 P E E TE 54 6 CPhyGenCtl RPC Remote Procedure Calls cssccssssscssssscsssccssssccsesscessssceensces 57 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 Contacting The Moving Pixel Company Phone Fax
51. efinitions Page 18 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 For each timing parameter the user can set two integer values that are summed to form the actual timing parameter used One value is in nanoseconds and the other value is in units of TLPX the LPFreq clock period Note that if the Enable Lane Delays checkbox is checked the minimum HSPrepare and HSExit times is 30 ns enforced regardless of user settings 5 5 3 TGR Length Registers Two TGR registers TGR Pre Length and TGR Post Length define additional replication counts for the Start Preamble and Postamble respectively during TGR and PRBS commands For example a TGR Pre Length of 3 means that the Start Preamble will be repeated an additional three times for a total replication count of four during TGR and PRBS commands 5 5 4 Lane Delay Enable A checkbox labeled Enable Lane Delays indicates whether or not the output stream is constructed to support lane delay adjustment of up to 15 ns Special stream construction is required to support lane delays due to hardware limitations at LP HS boundaries The reason this is required is that hardware must always switch all lanes from LP to HS or vice versa at the same time As lane skew is implemented by delaying data relative to other lanes the stream must be constructed such that the delay still results in a reasonable decodable CPhy waveform To achieve this the applic
52. elete etc Save button to save the current control settings as a named frame timing configuration 5 8 3 2 Frame Parameter Controls Controls near the top part of the window specify horizontal and vertical blanking component dimensions as well as the active dimensions of the frame Read only H and V totals are automatically computed as values are entered For CSI the back porch and front porch controls are disabled For CSI note that the HSync blanking period must be long enough to account for all packet overhead i e SOT EOT and packet headers in the line For DSI each blanking period must be long enough to account for each individual blanking segment overhead with front porch additionally accounting for tactive packet overhead If the blanking setting s are insuffiicient an error message will be displayed when a video command is sent The message will also estimate the additional number of pixel needed for HSync to make the video frame implementable e g Error HSync is too short to implement LP11 blanking need approx 17 more pixels 5 8 3 3 Frame Timing Controls Controls in the center right of the window let you specify the pixel clock timing in four different ways via line time duration pixel clock frequency frame rate or HS symbol rate if enabled Entering a value in one of these four controls automatically updates the other three The HS Sym Rate text box sets indicates the lane symbol rate for the current
53. enCtl a non standard symbol value of 7 is also supported representing an error symbol transition An error symbol transition really non transition CPhy symbols consist of values from 0 4 as according to the CPhy specification and also a non standard value of 7 which can be used to force an illegal duplicate state on the bus A symbol value of 7 represents a non transition stay in the same state for the next symbol period Page 6 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 As specified in the CPhy specification the symbol to state transition mapping in the CPhy Generator is as follows Table 1 CPhy HS Symbols Symbol Value State Transition Rotate CCW same polarity Rotate CCW opposite polarity Rotate CW same polarity Rotate CW opposite polarity Same phase opposite polarity NR W N R oO Same phase same polarity invalid state transition 3 5 CPhy HS States CPhy HS states states in this document represent high speed voltage levels for the ABC wires of a trio and can be specified in CPhyGenCtl as integer values ranging from 0 7 In CPhy HS states correspond to legal voltage combinations on the three trio wires where legal is defined as a proper permutation of high medium and low voltages As such there are 6 legal states LMH LHM MHL MLH HLM and HML using the following definitions H represents a
54. frame number equal to Z Line Numbering drop down box selects Line Numbering usage o 0 the line number parameter in the Line Start and Line End packets is set to zero o 1 2 3 the line number parameter in the Line Start and Line End packets is set starting with 1 and incrementing each line 5 8 3 5 DSI Frame Construction Controls There are three frame construction options for DSI HSync Mode drop down box selects the DSI HSync Mode Events horizontal syncs in active lines of video frames are conveyed with only an HSync Start packet Pulses horizontal syncs in active lines of video frames are conveyed with an HSync Start packet a Blanking packet and an HSync End packet In DSI this option is only available in Non Burst mode Burst Mode drop down box selects the burst mode Non Burst non burst mode assumes the DSI clock is just sufficient to transmit active lines with no extra bandwidth If the clock is set such that there is extra Page 40 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 bandwidth based on the current horizontal line parameters it is consumed in the horizontal sync pulse width when HSync Mode is set to Pulses Otherwise the line time is shortened Burst burst mode assumes the clock is set faster than necessary to transmit the video frame Currently a blanking packet is inserted in each line following active video to consume the excess bandwidth Top Fiel
55. he GUI e g the background and foreground colors of buttons forms menus etc This is achieved using the Color Options dialog brought up via the Options menu by selecting the Set Colors menu item The Options dialog see Figure 11 consists of a column of buttons on the left showing the current color settings of GUI controls In the center of the dialog is a color square showing all the colors associated with a given luminance Clicking and dragging the mouse inside of the color square will select the color of the currently selected control Eel Color Options CW WO E On a E DR RNRSR Button FG Button BG Form FG Form BG Menu Item FG Menu ltem BG Menu Item Hilite FG Menu Item Hilite BG Tab FG Tab BG Tab Hilte BG Tab Hilite FG lolx Figure 11 Color Options Dialog Page 53 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 The luminance can be changed by adjusting the slider labeled Y Alternately you can change the R G B color components using the sliders on the right of the color square Yet another way to change the color is to click on a control button color far right column This loads the selected color as the current color For example to set the Button foreground the same as the Form foreground click the Button FG radio button and click the color button next to the Form FG button As the control color changes the main window colors will chang
56. hether to implement the blanking periods during Vertical blanking as LP111 or HS blanking packets A third option is Auto which implements the blanking segments via LP111 unless it is too short in which case the segment is implemented with na HS blanking packet Note that vertical blanking lines in DSI have one blanking period in Event mode and two blanking periods in Pulse mode with the HSync End packet in between them 5 8 4 Video Frame Construction Details In contrast to the relatively simple non video mode commands video mode commands define a complicated program stream of LP signaling and HS packets In CSI a frame consists of the following e VSync 1 blanking lines Page 41 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 e First active line with Frame Start packet e HActive 1 active lines e Blanking line with Frame End packet All lines are of equal length in time thus the lines with Frame Start and Frame End have shorter actual horizontal blanking to account for the timing difference A blanking segment can be implemented by HS blanking packet or a round trip transition to LP11 for the required duration Blanking segments set to Auto that are long enough to incur the overhead of the round trip transition to LP111 use this method Otherwise the interval is implemented with a blanking packet Of course even blanking packets have overhead and so segments must be at l
57. howing the DataID and PHCRC for short packets and additionally the WordCount and CheckSum for long packets Checkboxes next to the PHCRC and CheckSum fields allow user modification of these fields to cause a receive error in the packet To change the PHCRC or CheckSum simply check the associated checkbox making the field value editable Unchecking the control recomputes the correct PHCRC or CheckSum value and restores the field back to its original read only state Note that the PHCRC value is duplicated in the packet header as well as across lanes Use the File command if you need full control over all aspects of transmission including changing individual PHCRC values in a packet header This capability applies to all CSI DSI commands including those within macros With video mode there is no ability for the user to set the PHCRC or CheckSum of any of the video frame packets Page 51 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 When applied to the WriteMemory commands if the command is partitioned into multiple WriteMemory commands the user set PHCRC and or Checksum applies only to the first WriteMemory command Remaining WriteMemory commands are always built with their correct PHCRC and Checksum An additional mechanism for introducing packet errors is described in the description of RPC In addition to allowing the PHCRC and Checksum to be set the SEND_IMPAIRED_MIPI_CMD RPC call allows a
58. ing PRBS seed should be nonzero lane 2 starting PRBS seed should be nonzero lane 3 starting PRBS seed should be nonzero kel kel kel kel 5 7 6 PRBS18 Sequence The PRBS18 Sequence is defined in the CPhy specification The PRBS logic generates 16 bit words to be encoded into symbols and then states exactly as with normal packet data However unlike normal packet data sequence words are associated with only one lane Each lane runs its own PRBS generator independently In CPhyGenCtl the PRBS18 command accepts four arguments initializing each lane s PRBS generator Optionally the user can specify identical seed values causing all active lanes to have identically synchronized data patterns e LO Seed 17 0 e LI Seed Uu e LI Seed 17 0 e L3_Seed 17 0 lane 0 starting PRBS seed should be nonzero lane 1 starting PRBS seed should be nonzero lane 2 starting PRBS seed should be nonzero lane 3 starting PRBS seed should be nonzero KH kel kel kel 5 7 7 ULPS The ULPS command causes the designated lanes to enter the ULPS state This command implicitly contains a Wait Host Event command which waits for an event signal that can be generated by the user using the Host Event button of the main window Behavior is as follows When the command is sent the PG outputs the ULPS entry sequence on selected lanes and continues to run as the instrument holds lanes indefinitely in ULPS During this
59. ion 5 8 5 6 6 2 Macro Commands Macro commands are described in section 5 9 5 6 6 3 Variable Argument Commands Certain commands allow the user to specify a variable number of parameters through an argument text box named Params specifically the following commands Generic Short Write Command DSI Generic Read Request DSI DCS Short Write DSI DCS Read Request DSI Custom DCS Command DSI Custom Command Custom Long Command SON A Neo 7 The confirmation dialog can be disabled in the GUI Options dialog Options gt GUI Options Page 21 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 The differences between these commands are minimal The Custom Command and Custom Long Command allow the user to specify an arbitrary DataID byte The other commands implicitly fill in the Data Type and allow the user to specify a Virtual Channel argument The DCS commands also allow the user to specify the DCS command byte All allow a variable number of arbitrary arguments computing the PHCRC packet length for long packets PHCRC and Checksum for long packets The actual packet constructed may have either long or short packet formatting depending on the number of values parsed from the Params argument string For non DCS packet types if Params contains 0 1 or 2 bytes then short packets will be constructed For DCS packet types if Params contains 0 or 1 byte then short packets will
60. left pane Config tab of the main window Note that adjustments can be made even while a program is running After entering desired settings on the dialog click the OK button to accept them or Cancel if you want to discard them Since settings are updated as they are adjusted Cancel in this case means setting control values back to their values before the dialog was opened Clicking on the Defaults button sets all controls to their default values Figure 5 shows the Instrument Configuration dialog Below is a description of its controls Force Test Pattern checking this box causes a test HS symbol pattern to be output on all CPhy lanes at the current HS Sym Rate setting The pattern alternates between state value 6 and state value 1 This pattern is generally used while the instrument is connected to an oscilloscope to ensure the instrument is working properly and to visually adjust voltages and delays for calibration Common HS Voltage this check box when checked disables the HS voltage controls for all lanes except for lane 0 Adjustments to data lane 0 HS voltages are automatically applied to all lanes Otherwise HS voltage settings can be independently adjusted gt Video mode commands follow the currently selected frame timing configuration which sets the HS Sym Rate for the video command 4 If a program is currently running the HS Sym Rate used for the test pattern will be the current program symbol rate which may
61. mbol data CPhy maps 2 bytes to 7 symbols or equivalently 21 bits of memory implying a 16 21 conversion ratio Thus 1 5 GB of memory could store about 1 14 GB of video payload bytes Max Frames 1 14 GB HActive VActive BytesPerPixel A more accurate way to determine how many frames will fit into memory with your frame timing settings is to send a small sequence consisting of say 10 or 20 frames Once running the status readout will indicate how much memory of the PG is used as a percent of the total available Page 42 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 5 9 Macros A macro is a sequence of non video commands grouped and named as a single new command Once defined they can be assigned to command buttons and sent to the CPhy Generator like any other command When viewing and creating macros controls in the Macro tab of the main window is used These controls displays the component commands of the macro and allows basic macro editing see Figure 10 below 5 9 1 Defining a new macro To define a new macro click on the Start Macro button at the bottom right of the Macro tab pane This button will change its caption to End Macro and will activate the Macro Cmds list box with no component commands initially present TU In this editing mode called macro mode commands that are sent either via a command button via the Send button at the top of the main window
62. memory Provides up to 15 ns of integer lane skew with fractional symbol lane skew below 1 5 Gsym s Provides real time per lane high and low voltage fine adjustments for both LP and HS signals Supports fine adjustment of CPhy bus timing Supports LP contention detection Supports arbitrary logical to physical lane mapping Provides configurable Trig Out signal The CPhyGenCtl application is a Windows application that embodies knowledge of MIPI CSI and C PHY protocols to build programs for the CPhy Generator Based on its predecessor software PGRemoteForP338 it provides the following functions e Automated CSI video frame generation based on user frame timing e Generic File Command syntax using text files to define arbitrary low level CPhy LP and HS signals including mixed state symbol and packet byte transmission e Macro capability for custom protocol level program definition e TGR and PRBS test pattern generation e Push button interface for defining naming and sending CSI packets video macros and test patterns e Comprehensive CPhy protocol configuration for setting preamble postamble and sync sequences for each lane Also provides configuration for user CPhy bus timings e g HSPrepare HSExit etc e Scripting support for configuration program definition and output Page The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 e Remote control capability via DLL Page 2
63. ment stream is associated with this command PH Sends a 4 byte PH sequences on active lanes including SOT automatic PH CRC generation and duplication Exactly 4 bytes must follow this command PAYLOAD Sends one or more packet data bytes demultiplexed across active lanes followed by an automatically generated CRC then EOT IF lt flag gt In conjunction with ENDIF allows blocks to be enabled or disabled for parsing Nesting of the command is allowed ENDIF In conjunction with IF allows blocks to be enabled or disabled for parsing Nesting is allowed FILE lt filename gt Parses the commands in the given text filename inserting them into the current stream Nesting of this command is allowed Individual component commands and their associated data Page 26 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 may not span multiple files lt lg gt Name is shorthand for lane group Consists of one of the following symbols ACT10111213 lt lgwd gt Name is shorthand for lane group with demux Consists of one of the following symbols ACT 10111213 DEMUX lt dur gt Integer duration inns Value will be quantized to a multiple of the HS Sym Rate and must be greater than or equal to 40 ns lt flag gt Integer value used for boolean function 0 false 1 true lt filename gt String value containing a file
64. nd insertion is enabled Options gt Enable Command Insertion sending another command while a command is looping will cause the application to ask whether you want to stop the PG to allow the sending of the command Unless the GUI option Suprress confirmation message when stopping PG is set in which case the looping command is automatically stopped Page 9 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 5 Using CPhyGenCtl The CPhyGenCtl software is the configuration and control application for the CPhy Generator Using its GUI interface users can interact with the instrument configuring commands to send on the bus monitor status and review DUT response data In addition the application supports a remote control interface called RPC that supports controlling nearly all capabilities accessible through the GUI using a remote user program 2 CPhyGenctl CSIConfig1 cfg lo x Fie Connect Standard Options Sot About Debug anken E Video Cmd w Send 4 Code GI E H RGB888 Null Packet Blanking Packet DCSCmdDese DT Mode g P PEST Ae C jobs DigRF MIPIPICTS colors 1280x720 bmp C obs DigRFIMIPIPICTS colors1280x720 bmp VirtChan 1 0 FrameCount MODIFIED Config Macro Inst Cfg PG Running lt 0 1 used l C S Sy Lane Cnt Timing Cfg HS Sy Host Event ommand sent Video Cmd 1501 v1 30 1 2 0 0 Moving Pixel Figure 2
65. nd script recording select End Recording from the Script menu 5 11 7 Updating Firmware Periodically new firmware releases may be issued for the CPhy Generator The latest firmware release can be downloaded from The Moving Pixel Company s website and after unzipping is labeled CPhyGenFirmware_VerX_Y rbx where the X and Y represent version and release digits respectively To update firmware in the CPhy Generator perform the following steps e Connect to the instrument normally If for some reason the instrument s firmware has been corrupted and is non responsive it is important in the Connect dialog to check the Firmware update only checkbox to prevent interaction with the FPGA Page 52 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 dialog Select the Connect gt Update Firmware menu option to bring up the firmware Browse for the rbx firmware filename on your machine obtained from the Moving Pixel Company Click the Program button Programming takes a couple minutes with status updating progress When programming is complete close the application and power cycle the instrument On power on you can watch the instrument LEDs for the appropriate sequence The red and yellow LEDs alternate for a couple seconds ending with the green LED remaining solidly on 5 12 Customizing GUI Colors In the CPhyGenCtl the user can configure the colors of various elements of t
66. nding a video mode command additional parameters of video mode playback must be appropriately configured using the Frame Timing dialog see section 5 8 3 These timing parameters like other application settings are saved and restored in an application configuration file when CPhyGenCtl is closed and restarted Once a video command has been defined and the timing configuration parameters have been set sending the command initiates the sending of video data The internals of how video frames are constructed is described in section 5 8 4 Once video frame packets have been built and downloaded to the CPhy Generator instrument video begins playing on the CPhy bus If the Loop Commands option Options menu is checked video frames are played and looped indefinitely stopping only when the Stop PG button at the bottom of the main window is pressed When the CPhyGenCtl stops a looping video sequence the current frame is completed before exiting and returning to the LP111 quiescent state 5 8 2 Video Command Definition The four DSI video commands i e Pixel Stream commands and all of the CSI video commands take a data file name and a frame count as arguments The data file name should have one of the following characteristics Page 35 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 e An image file with the extension bmp jpg png tiff of having any dimensions The image is read in resc
67. nds may be added to a macro that have the same name but different arguments e Also sending an RPC script that contains SEND_MIPI_CMD calls while CPhyGenCtl is in macro mode adds the commands to the macro Note that other RPC command types in the script are executed if possible in macro mode at the time the script is sent These command types are NOT saved in the macro 5 10 Command Buttons The top right pane of the main application window consists of four tab pages of 30 command buttons labeled Cmds1 Cmds2 Cmds3 Cmds4 Clicking on the tab page header makes the 30 button command set available for use Command buttons can be associated with a named command by the user allowing single click sending of the named command on the CPhy bus When assigned with a command buttons are labeled with the command name and made active Otherwise they are Page 46 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 inactive and show the label lt unassigned gt Note that buttons maintain separate DSI and CSI command sets selected when the protocol is changed using the Standard menu Command buttons have an associated context menu brought up by right clicking on the button The operations available from the button context menu are as follows e Assign Current Cmd assigns the currently selected command in the Cmd Name drop down control to the button e Assign Cmd assigns a named command selected from
68. nly applies to non video commands and does not affect video mode operation or low level DPhy CPhy commands such as escape commands as well as the PRBS TGR test sequences Page 13 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 HS Sym Rate this control sets the lane symbol rate of the CPhy bus for all commands except video mode commande The supported range for the HS Sym Rate setting of the P339 CPhy Generator is 23 4 Msps to 2600 Msps Note that changing this control setting does not immediately affect the symbol rate in particular if a program is currently running Instead it schedules a frequency reconfiguration for the next sent command To see the current symbol rate on the CPhy bus for a running program look at the HS Sym Rate display in the status pane not the HS Sym Rate setting in the instrument configuration pane LP Freq this control sets the frequency of LP bits on the CPhy bus i e determines T LPX in the DPhy CPhy standard Lane Cnt this control selects the number of CPhy lanes to use 1 4 HS packet data is demultiplexed onto CPhy lanes according to the CSI protocol specification Unused lanes are held in the LP111 output state 5 4 2 Instrument Configuration Dialog Once connected the CPhy Generator can be configured with parameters specific to your testing needs via the Instrument Configuration dialog brought up from the main window via the Inst Cfg button in the lower
69. ny byte in a packet to be XORed with an error mask before it is sent Please see the description of this command for further information 5 11 6 Script Recording not yet implemented Script recording is a mode in which MIPI commands sent to the DUT are also written as RPC commands to a designated script text file All commands including macros and video mode commands are recorded After recording the script file can be sent as any other script file or used as a template for creating additional script files In addition the current configuration state can be written to the script file This allows the script file to initialize CPhyGenCtl to a particular configuration or be sent to the Moving Pixel Company to document your configuration when requesting assistance To enable script recording select Start Recording from the Script menu When this option is selected a browse dialog is opened for you to designate the text script file name to use for recording Once script recording is enabled the status bar displays the text Recording in a new pane The script file is initialized with a header containing information about the current software and hardware configuration Any MIPI command sent without error during recording also causes an RPC command to be appended to the script file In addition selecting the menu option Write Current State from the Script menu causes the current state to be written to the script file To e
70. on Page 56 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 6 CPhyGenCtl RPC Remote Procedure Calls To facilitate automated testing CPhyGenCtl supports incoming RPC requests from other applications via a Microsoft NET TCP server port To support this function a separate DLL called CPhyGenCtIRPC DLL is provided written in NET Any programming language that can interface to a NET DLL can use this capability Alternatively RPC commands have a script form that can be used in a text script file and run from the CPhyGenCtl GUI In this case no external programming is required Many customers use script files extensively as they are a very powerful and convenient tool to configure and control CPhyGenCtl A separate document titled CPhyGenCtIRPC pdf has been written to detail the RPC communication interface supported commands and example client code provided with installation of the CPhyGenCtl application Please refer to this document for more information Page 57
71. on in the status pane of the main window updates on going operation 5 11 1 1 Stop PG As described above the sending of commands goes through several stages of processing some of which may take some time Program download in particular can take tens of seconds to complete for video commands when large blocks of video data are sent During this time the user may click the Stop PG button located in the bottom right pane of the main window to abort command sending In addition once a command is running and the PG is actively looping or waiting on an event the Stop PG button may be clicked to terminate operation 5 11 1 2 Restart PG The Restart PG button in the bottom right pane of the main window is used to resend the previous command bypassing the potentially lengthy download process This is useful in particular for video commands When the PG is restarted all timing configuration and parameters such as frequency lane count and clock start stop mode from the original command are used ignoring any changes since the command was sent 5 11 2 Status During operation additional status is displayed in the lower right pane of the CPhyGenCtl main window This status is updated every second and includes the following The PG run state running idle The memory use of a running program as a percent available in the instrument The HS symbol rate of a running program The data lane status enabled waiting on event
72. oping CPhy states on the bus For example if Params is set to aa bb cc dd the following symbol sequence will be looped on all active lanes 4 2 2 4 2 2 3 0 3 4 4 0 3 1 5 7 2 TGR Symbol Sequence The TGR Symbol Sequence is not described by the CPhy specification but is an extension of the TGR Data Sequence concept Like the TGR Data Sequence command there is one Params command argument only instead of data bytes the user specifies CPhy symbols There are no length restrictions on the number of symbols in the Params command argument For example if Params is set to 44444 7 the following state sequence might be output depending on encoder state 6 1 6 1 6 6 1 6 1 6 1 1 5 7 3 TGR State Sequence The TGR State Sequence is not described by the CPhy specification but is an extension of the TGR Data Sequence concept Like the TGR Data Sequence command there is one Params command argument only instead of data bytes the user specifies CPhy states There are no length restrictions on the number of states in the Params command argument For example if Params is set to 1 6 2 5 4 this five state sequence will be output repeatedly on the CPhy bus 5 7 4 PRBS9 Sequence The PRBS9 Sequence is defined in the CPhy specification The PRBS logic generates 16 bit words to be encoded into symbols and then states exactly as with normal packet data However unlike normal packet data sequence w
73. ords are associated with only one lane Each lane runs its own PRBS generator independently In CPhyGenCtl the PRBS9 command accepts four arguments initializing each lane s PRBS generator Optionally the user can specify identical seed values causing all active lanes to have identically synchronized data patterns e LO_Seed 8 0 lane O starting PRBS seed should be nonzero e L1_Seed 8 0 lane 1 starting PRBS seed should be nonzero 8 Note that inactive lanes remain in LP111 and their seed values have no effect on output Page 33 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 e L2_Seed 8 0 lane 2 starting PRBS seed should be nonzero e L3_Seed 8 0 lane 3 starting PRBS seed should be nonzero 5 7 5 PRBS11 Sequence The PRBS11 Sequence is defined in the CPhy specification The PRBS logic generates 16 bit words to be encoded into symbols and then states exactly as with normal packet data However unlike normal packet data sequence words are associated with only one lane Each lane runs its own PRBS generator independently In CPhyGenCtl the PRBS11 command accepts four arguments initializing each lane s PRBS generator Optionally the user can specify identical seed values causing all active lanes to have identically synchronized data patterns LO_Seed 10 0 L1_Seed 10 0 L2_Seed 10 0 L3_Seed 10 0 lane 0 starting PRBS seed should be nonzero lane 1 start
74. r be called FrameOffset The reason is that this parameter is used after the file has been imported and converted to the output video format For example for a 100 x 100 image in RGB666 18 bits per pixel an offset of 1800 references pixel 800 1800 18 8 which is the first pixel of line 8 In RGB888 an offset of 1800 references pixel 600 the first pixel of line 6 The line length in RGB666 is 100 18 8 225 and in RGB888 is 100 3 300 CPhyGenCtl has additional features that enhance the behavior of sending Write Memory commands Page 22 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 BMP File Decoding If a file has extension bmp the image data is first imported before it is sent in the long packet In this case FileOffset refers to the byte offset in the decoded image data and not the file In addition the decode format e g RGB 8 8 8 5 6 5 etc can be selected via the ConfigWriteMemory dialog Block Partitioning A single WriteMemory command can be partitioned into a sequence of WriteMemory commands The user configures this behavior via Configure WriteMemory Commands in the Options menu Figure 7 shows the ConfigWriteMemory dialog which has the following controls HE ConfigWriteMemory DCS WriteMemoryStart and WriteMemoryContinue configuration E Enable Partitioning Partition Length 2 bytes LP11 Partition Interval nmn us float HoA ters
75. s incoming RPC requests see section CPhyGenCtl RPC documentError Reference source not found o Update Firmware updates CPhy Generator firmware see section 5 11 7 e Standard o DSI selects the DSI command set and button assignments disabled o CSI selects the CSI command set and button assignments e Options Page 54 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 o Loop Commands this option causes commands including video mode commands and macros to be looped indefinitely Looping can be stopped with the Stop PG button o Wait on external event to start this option when checked configures the PG to wait for an external event on its Evtl input before outputting a sent command When the event input is a logic 0 the PG waits until it goes to 1 before continuing see section 5 11 4 for more information Note that the external event can also be used to control macro output using the Wait Ext Event packet type o Disable Command Timeout this option when checked disables the normal timeout for non video commands This timeout which is set to about one second causes the PG to abort output exactly as if the user pressed the Abort button This option is particularly useful for macros that include BTA or BTA_WAIT commands which can cause arbitrary delays based on the testing environment and the behavior of the device under test o Enable command insertion
76. s to connect to the CPhy Generator connected via USB to the host machine The appropriate license file for the instrument must be located in the application directory for successful connection see section 2 1 Connect Dialog Instrument Serial BB Firmware update only Figure 4 Connection Dialog Page 12 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 When CPhyGenCtl is launched the application automatically brings up a connection dialog see Figure 4 with a drop down control showing visible CPhy Generator instruments available for connection An alternative way to bring up this dialog once the application is running is via the Connect menu option in the Connect menu To connect to an instrument or change connection to a different instrument select the serial number of the instrument you want to connect to and click OK Select Offline to run in offline mode without an instrument connection Click the Cancel button will maintain the current connection state Once the dialog is closed the instrument serial number and firmware version will be displayed in a bottom right corner of the status pane to indicate the current connection Otherwise Offline will be displayed If an instrument is not powered on and connected via USB before this dialog is launched the Scan button can be used to show newly available instruments Also if an instrument s firmware has been corr
77. se The following describes command insertion behavior e Command insertion is enabled using the Enable Command Insertion option Checking this option means that a command sent while a program is running is intended for insertion e To send a subsequent command but not insert it either stop the PG using the Stop PG button or uncheck the Enable Command Insertion option e An inserted command may be sent in HSDT or LPDT mode and will inherit the LPFreq HS Sym Rate and LaneCnt settings used in the looping program regardless of GUI control settings e If the inserted command requires more time than that reserved by the Cmd Insertion Point via its Delay parameter the looping program is suspended until the inserted command completes e When a command is inserted CPhyGenCtl checks to see if it can detect the insertion command code in the output stream If it is not detected within 1 2 second an error will be reported To disable this check select the Disable command timeout option This option should be checked if the Wait on external event to start option is enabled or the macro contains a Wait Ext Event command Page 50 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 e Ifacommand is inserted when the PG is waiting on an external event to continue output the inserted command is queued to be sent when output resumes and the insertion point is reached e
78. sent for the HS burst preamble CPhy declares that this sequence should consist of seven 3s 4 Postamble the symbols sent at the end of an HS burst CPhy declares that this sequence should consist of seven 4s 5 Sync the symbols sent after the preamble just before an HS packet header CPhy declares that this sequence should be the seven symbol sequence 3 4 4 4 4 4 3 6 Sync2 the symbols sent between duplicate packet headers PH CPhy does not call this sequence out separately from Sync as they are declared to be the same A checkbox is provided for each lane labeled Default If checked all sequences for that lane are set to their CPhy defaults and controls are set read only Uncheck these boxes to change symbol values A checkbox is also provided labeled All Lanes Common When checked the sequence definition controls for lanes 1 2 and 3 are duplicated from lane 0 settings and made read only Finally there are a couple application requirements when setting symbol sequences 1 The protocol segments for each lane must have the same number of symbols 2 The Sync2 sequence is required to be 7 symbols An error message is displayed if these requirements are not met 5 5 2 CPhy Bus Timings In the lower left corner of the CPhy Timing Configuration dialog are controls for the user to set CPhy bus timings HSPrepare HSExit TAGo TAGet Wakeup Please see the CPhy specification for timing parameter d
79. t Configuration dialog Table 6 Assert Trigger Commands Trigger Command Value Description 1 Set Trig Out low 2 Set Trig Out high 3 Toggle Trig Out state 4 Pulse Trig Out 5 6 6 12 Cmd Insertion Point The Cmd Insertion Point is equivalent to LPDelay except it additionally defines a location in the macro where another command can be inserted while the macro is looping This feature is similar to command insertion during video mode Page 30 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 The first two parameters Delay LPValue are the same as for LPDelay A third parameter called Discard is a flag that affects how the LPDelay period is affected by the length of the inserted command Table 7 Cmd Insertion Point Discard Setting Discard Value Description 0 The inserted command is truly inserted into the program stream Thus if the Delay setting is 10 us and the inserted command requires 20 us the ending time of the LP delay period would be 30 us 1 The inserted command consumes the LP delay period as needed If the inserted command does not complete before the end of the delay period then subsequent stream data will be held off until the inserted command is complete Thus in the prior example the ending time of the LP delay period would be 20 us Please refer to section 5 11 3 for further details of command insertion 5
80. t state occurring in the previous component command in the macro which generally will be LP111 It is possible however for a previous component command in a macro to finish in a bus state other than LP111 for example from a second File Command Note that certain degenerate patterns may not be able to be implemented by the CPhy Generator as there are structural requirements on the program stream it can output Thus it is possible for the stream described in the File command to generate an error during construction if it fails these requirements The error message will say Program cannot be sent by hardware at the current HS Sym Rate While exact requirements are too complicated to document failure is always due to too few symbols states on average in constructed output records relative to the HS Sym Rate throughput requirements Generally the work around is to add more states symbols or bytes to the stream or decrease the HS Sym Rate The next sections describe component commands and data 5 6 6 6 1 File Command File Syntax Table 5 File Command File Syntax Command Description HS_BYTES lt lgwm gt Sends one or more HS packet bytes allocated to lanes according to the argument HS_BYTES_PLUS_CRC lt lgwm gt Sends one or more HS packet bytes automatically appending a 2 byte CRC to the stream Bytes are allocated to lanes according to the argument HS_SYMBOLS lt lg gt Sends one or more HS CPhy symbols
81. th the syntax RAMP_ lt hvmask gt _ lt rgbmask gt The lt hvmask gt value if present can be 1 vertical 2 horizontal or 3 diagonal The lt rgbmask gt value if present specifies which color planes are active For example RAMP_3_4 specifies a diagonal ramp in red only and RAMP_2_3 specifies a horizontal ramp in both green and blue A monochrome grid pattern can be generated with the syntax GRID_ lt on_cnt gt _ lt off_cnt gt _ lt solid_line_cnt gt _ lt var_line_cnt gt The grid pattern consists of two types of lines solid lines and variable lines Variable lines are defined by the user with lt on_cnt gt and lt off_cnt gt basically defining the repeating pattern of on pixels followed by off pixels Then the test pattern is formed by a repeating pattern of solid lines for lt solid_line_cnt gt followed by variable lines for lt var_line_cnt gt For example lt on_cnt gt 1 and lt off cnt gt 9 defines a variable line that has a single white pixel every 10 pixels If lt solid_line_cnt gt 1 and lt var_line_cnt gt 9 then the naming syntax is GRID_1_9_1_9 and the pattern formed is a grid with single line thickness with 10 x 10 squares GRID_S_15_5_15 defines a grid with 5 pixel line thickness with 20 x 20 squares 5 8 2 2 Using Motion Video Sources Note that it is easy to use images from video files AVI DivX MPEG MOV WMV MP4 etc using various third party JPEG image extraction tools that are
82. time status indicates that the PG is Waiting Host Event Until this event is seen or the PG stopped lanes remain in ULPS When the host event occurs the PG outputs the ULPS exit sequence on selected lanes and returns to LP111 Page 34 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 Note that this command can be looped like most commands If the Loop Commands option is checked then the ULPS command will repeat after the Host Event occurs From the user s perspective in this case nothing seems to change as the PG status remains static the PG continues to run and the Waiting Host Event message is still displayed 5 8 Video Mode Commands 5 8 1 Overview When a user sends a video mode command i e RGB YUV Raw etc CPhyGenCtl automatically builds an entire CSI packet stream representing one or more video frames having the appropriate timing and structure according to the CSI standard The video sequence can be played once or looped continuously to provide ongoing real time video appropriate for emulation of CSI camera streams All video mode commands accept a single DataFileName argument to specify an image file BMP GIF TIF that contains the video frame data to send To send a video sequence of more than one frame DataFileName uses a special naming convention to allow CPhyGenCtl to derive the file names for subsequent frames in the sequence see section 5 8 2 Before se
83. timing configuration This value will be dependent on the current timing settings the current PktType setting in the main window indicating the video format and the lane count If the current PktType is not a video command HS Sym Rate displays N A and the text Page 39 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 box is disabled Otherwise the text box is enabled allowing the user to enter a symbol rate Note that if the Lane Count is subsequently changed the HS symbol rate will change along with it keeping the line time pixel clock and frame rate constant 5 8 3 4 CSI Frame Construction Controls There are three frame construction options for CSI Use LS LE drop down box selects Line Start Line End packet usage o Yes Line Start and Line End packets are inserted into the video stream and bracket each active video packet o No Line Start and Line End packets are not inserted into the video stream Frame Numbering drop down box selects Frame Numbering usage o 0 the frame number parameter in the Frame Start and Frame End packets is set to zero o 1 2 3 the frame number parameter in the Frame Start and Frame End packets is set starting with 1 and incrementing each frame Note that the frame number will only increment for each unique frame in the sequence and will repeat when looping For example if only a single frame sequence is sent the repeating frame will always have
84. tor are unused After power on assuming the CyUSB3 driver is installed the instrument will appear in the device manager of the host machine as P339 CPhy Generator At this point launching CPhyGenCtl should show the hardware serial number in its Connect dialog ready for use 2 3 Quick Start Summary The following summarizes the overall procedure for installing and configuring the TMPC software and hardware for CPhy testing 1 Install CPhyGenCtl section 2 1 2 Set up connect and power on the CPhy Generator section 2 2 3 Launch the CPhyGenCtl application and connect to the CPhy Generator instrument section 5 3 4 Configure instrument operational parameters section 5 4Error Reference source not found 5 Configure video timing parameters for your device section 5 8 3 6 Configure CPhy bus timing and protocol definitions section 5 5 7 Define commands and assign them to buttons if desired section 5 6 1 Once these steps are completed the system is ready to start testing Page 4 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 Page 5 The Moving Pixel Company CPhyGenCtl User s Manual Doc Rev 1 0 6 16 14 3 Common Command Data and Element Types Various data and element types are used in the CPhyGenCtl application whether as parameter arguments to GUI commands script commands or component commands of a text file used in the File Command This section
85. uivalent to LPDelay except that its Delay parameter is relative to a position in a macro called Zero Pos defined by the user with the Mark Zero Pos command This command is useful when defining video frames in macros allowing the user to define relative times between packets e g active video packets line start line end etc See LPDelay for a definition of command arguments 5 6 6 9 Mark Zero Pos The Mark Zero Pos command no arguments defines a Zero Pos location in a macro Subsequent Delay To Pos commands use Zero Pos as a reference position time in the macro to define the relative duration of a delay Note that multiple Mark Zero Pos commands are allowed in the same macro 5 6 6 10 Wait Ext Event The Wait Ext Event command no arguments inserts an indefinitely looping LPDelay period in a macro stream causing output to suspend in the LP state until an external event edge occurs 5 6 6 11 Assert Trigger The Assert Trigger command is equivalent to LPDelay except it has a third parameter that specifies the specific trigger command to send controlling the Trig Out signal of the CPhy Generator The trigger command is implemented near the beginning of the LPDelay period but exact timing depends on the output frequency and may vary relative to the period start with each trigger command Table 6 shows the trigger commands Note that the trigger pulse width is defined in the Instrumen
86. upted and does not boot properly it is important to check Firmware update only when connecting to the instrument for the purpose of updating its firmware This will disable communication with the central FPGA which may not respond properly if it is in a bad state After connecting to the instrument in this way please proceed directly to the Update Firmware dialog Connect menu without other main window control interactions When testing is complete the Disconnect menu can be used to close the instrument and return to offline The application will do this automatically on closing so it is not required 5 4 Instrument Configuration There are two main sets of controls for instrument configuration The main window contains the most important and commonly adjusted controls such as LP and HS symbol frequencies lane count and DT Mode Less used controls can be found in the Instrument Configuration Dialog 5 4 1 Main Window Configuration Controls Four controls in the Config tab at the bottom of the main window are used to describe principal CPhy configuration parameters These controls are described below DT Mode this combo box sets the default data transfer mode for commands whose DT Mode field is set to Default Packets may be sent as either HS packets HSDT mode or LP packets LPDT mode Individual commands can override the default DTMode setting by setting the DTMode field in their command arguments Note this mode o
87. y add a single video data packet to the macro unlike the entire video frame that is built when sent directly Other differences from video mode usage 1 The entire contents of the given file are put in the video packet 2 The FrameCnt parameter is ignored 3 The file argument is assumed to be in binary format i e BMP file decoding is not supported Thus to manually build an entire video frame into a macro would require a binary file for each active line This capability is more suited for programmatic macro building using RPC commands 5 9 6 HS Component Command Behavior When macros are parsed by CPhyGenCtl the application groups HS component commands that don t have BTA enabled into a single HS burst To send HS component commands in its own burst the user must put an LPDelay call between each HS command 5 9 7 Additional Notes on Macro Behavior Below lists some final miscellaneous notes on CPhyGenCtl behavior when working with macros e Macro names must be distinct from command names CPhyGenCtl will not allow a macro to be saved with the same name as a command and vice versa e Note that once commands are added to a macro they are duplicated and no longer are associated with the original command Specifically if the original command is then modified and saved the duplicate command in the macro having the same name does NOT change Moreover although it would be a confusing practice to do this multiple component comma
Download Pdf Manuals
Related Search
Related Contents
Anleitung als PDF MANUAL DE INSTRUCCIONES MODELO 8110DX Operating instructions - Manfred Jünemann Mess Jeudi 22 janvier 2009 à 19 heures à la maison du Limousin à Paris WiFree User Guide INSTRUCTION MANUAL HP ProBook 4720s Notebook PC Manual - FCI - Secretaria da Fazenda CONDIZIONI FRANCESEdefmaggiox Manuale TwoNav Sportiva Copyright © All rights reserved.