Home

AnadigmDesigner®2 User Manual

image

Contents

1. OE Cancel The primary configuration data can be generated for a chip regardless of what CAM C Code functions have been selected If a chip is checked then the primary configuration data is generated in the C Code files and API functions are generated to access the data lt may be desirable to disable the output of the primary configuration data if 1 There are multiple chips in the circuit but you will only be using the C Code for a sub set of them 2 The chip will get its initial configuration from something other than the microprocessor but you need the C Code for reconfigurations Copyright 2004 Anadigm Inc All Rights Reserved 47 UM020800 U0010 AnadigmDesigner amp 2 User Manual 7 3 7 C Code Generation Options Clocks Tab This tab is used to select which chips will be able to have their clock divisors manipulated with C Code C Code Generation Options Generate Code to Manage Clocks For ExampleChip TestChin Not Reconfigurable I q OF Cancel Help The clock reconfiguration data can be generated for a chip regardless of what CAM C Code functions have been selected If a chip is checked then the necessary data and functions are generated to manipulate clock divisors for that chip 7 3 8 Generate C Code Window This window is used to select the names of the generated C Code files as well as the directory where the files will be written Generate C Code
2. Close Help In order to accommodate construction of host processor software in some other language than C assembler for example AnadigmDesigner 2 creates data files which contain the same Primary Configuration and reconfiguration difference data data sets in ASCII Hex Format AHF The data may be output into a single file per DevicelD or organized into separate files When output into one file a txt file containing the AHF data is created with root name of Stat eDrivenDevicennn txt where nnn is the DevicelD number ID1 The file contains only comment fields to delineate the data sets and the AHF formatted data itself When the Each transition in a separate file radio button is selected a subdirectory is created similarly named StateDrivenDevicennn Within that subdirectory separate AHF formatted txt files are generated without comment each containing either Primary Configuration data or reconfiguration data difference data The files names alone provide guidance as to the contents For example Primary chip1 txt contains the Primary Configuration data for the device named chip 1 7 6 C Code API State Driven Dynamic Configuration The C Code API for State Driven dynamic configuration is much reduced from Algorithmic Method Only two functions are provided one to assist in a Primary Configuration and another to assist in a device reconfigu ration This reference shows all C Code funct
3. AnadigmDesigner 2 is the world s first EDA product that lets you develop designs using FPAAs that can be reconfigured by the MCU in real time to change the function they perform within a system or to adapt on the fly to maintain precision despite system degradation and aging AnadigmDesigner 2 takes your design and automatically translates it into C code that allows the design to be adjusted and controlled by a microproces sor within an embedded system That means you can now control and adjust analog functions using system software in real time a breakthrough capability for the analog world e AnadigmDesigner tools allow complex circuits to be designed with a simple drag and drop graphical interface e Proven easy to use design tools for analog circuit designs e No need for analog expertise to build complete analog systems e A growing library of reusable CAMs pre package common analog functions e Expert system synthesis tools AnadigmFilter and AnadigmPID automate complex circuit design e Circuit building blocks are abstracted to a functional level that can be manipulated in AnadigmDesigner 2 e Build complete analog systems rapidly simulate immediately and then download to the chip for instant verification e Built in multi chip time domain simulator four channel oscilloscope interface and arbitrary waveform simulation e Automatically generates C code to allow analog functions to be adjusted and controlled directly by a mic
4. The CAM Selection Dialog Box A left click over the desired CAM selects it Another left click on the Create CAM button or Enter keystroke and a ghosted image of the CAM attaches to the mouse cursor ready to be placed into the FPAA represented in the design window Once the CAM is dropped into place another left click the Copyright 2004 Anadigm Inc All Rights Reserved 10 UM020800 U0010 A Set CAM Parameters dialog box associated with that CAM appears depending on the Settings gt Preferences choices made under the CAM tab The contents of the Set CAM Parameters dialog box vary with the CAM selected but in general it will always contain all the user adjustable parameters available for that particular CAM If a particular design requires many CAMs then a second chip instance should be placed using the Edit gt Insert new chip pull down menu selection The Set CAM Parameters dialog can be reopened at any time from within the design window A double left click over any placed CAM will bring up its Set CAM Parameters pop up It is in this dialog that all the pertinent parameters of this particular placement the CAM are established AnadigmDesigner 2 defaults to a reasonable set of default parameters but you are free to change any text entry box or radio button with a white background to any in range value that suits your needs Set CAM Parameters AN 21 Standard FilterBiquad 2 0 1 Biquadratic Filter Anadigm Approved CAM
5. Anti Alias Filter Active AN20 Input Cell with Pad Select Version 1 0 Parameter Corner Frequency 496 Input Differential Low Offset Chopper Off Anti Alias Filter Active Input Line Select A Copyright O 2004 Anadigm Inc All Rights Reserved 9 UM020800 U0010 AnadigmDesigner amp 2 User Manual Print Preview The Print Preview command allows you to view the report to be printed out one or two pages at a time There are tool bar buttons available for zooming in and out flipping through the pages printing and dismissing the window Print Setup The Print Setup command brings up a standard print dialog box From this pop up you can select paper size and orientation as well as a printer You may also adjust print options specific to the selected printer Register The Register command brings up a dialog box in which allows you to type in your License Identifier and License Key Trial license keys can be obtained free of charge at the Anadigm web site http www anadigm com Recent Files The second to last section of the File pull down menu is a short list of the most recently used design files sometimes referred to as an MRU list From this convenient location you can quickly left click over the desired design and AnadigmDesigner 2 will re load that design Exit A left click over the Exit item will immediately close down AnadigmDesigner 2 lf your design was modified since the most recent save then AnadigmD
6. S2 records differ slightly from S1 records in that they have 24 bit address fields whereas S1 records allocate only 16 bits of addressing per record Copyright 2004 Anadigm Inc All Rights Reserved 15 UM020800 U0010 AnadigmDesigner amp 2 User Manual Binary File bin The configuration data is written to a file in space efficient binary format The file may be used to program a serial PROM chip or used as a data file for microcontroller hosted FPAA designs Reversed Option An alternate format available for each of the file format selections mentioned above reverses the bit ordering of the configuration data bytes It is not uncommon to encounter serial PROM programmers which require programming data to be presented this way The options described in the following section support some of the more detailed facets of the FPAA s configuration logic In order to best assimilate the information presented below you should first read the configuration logic section of the FPAA User Manual Configuration File Options Within the Write Configuration Dialog there is a Configuration File Options button which brings up the dialog shown in Figure 12 Configuration File Options File Options Configuration Type Compression Options EXECUTE Options C Individual Files Ce Primary Uncompressed Immediate C Single File Dynamic Compressed C External Pin Advanced Options Dummy Bytes Miscellaneous Include Dummy Bytes Use
7. TAA GetPrimaryConfia DAA EE 50 4 2 RD 50 7 4 3 lntaltGetiecontgoliata A 51 TAA SMULGOW NING COMMGID Aaa 259 ED IE ED DE EGEDE Ed reb ba ed EEG aa 52 15 Tei le RT EE 52 ORP 53 TAT GetRecontigt eu tele EE 54 7 4 8 SetReconfigControlFlags ANE 55 CO GETS lee PN 56 1210 GEM CHOC EE 56 EEG 00 BI 0 EE 57 TAA E 00 BG E 57 1419 INCTEMEMCIOCKDIVISON EE 58 1 4 14 DecrementClockDivisor EE 59 TANS ClockUpdatesFinished E 59 7 4 16 CAM Functions Example Application cccccceccceeccceeeseeeseeseeeeeeeeaeeeseeeseeeeeeesseeeseeseeeseeesaees 60 7 5 State Driven Dynamic Configuration sssssssnsunenu nest k cena eeeeeeeeeeeeeeseeeseeeesueeseeesaeeseueseeeseeegeeees 61 TE EG Goo EE 62 FE PR NE 62 7 6 C Code API State Driven Dynamic Configuration cccccceccceecceeeceeeeeeeeseeeeeeeeseeeseeeeeeeeeeeeaeeesaeeeas 62 6 1 GetCircuitPrimaryData EE 63 762 GetCircuitTranstionData RE 63 7 7 Static Configuration all devices 0 0 cece cceccccssseccseseeceeeeeccseeeceueesseeecceaeeessaeeecsaucesseueesseseessageessageeenes 64 8 AnadigmFilter 65 9 AnadigmPID 69 Copyright O 2004 Anadigm Inc All Rights Reserved il UM020800 U0010 Table of Figures Quick Start Figure 1 The Simple Example Circuit in Action cccccccceccccececeeeceeeceeeeaeeeseeeseueeseeeseeeseeesseeeeeeeseeeeseeesenees 2 Figure 2 The CAM Select Dialog BOX ccc ccccccccsscccececeeeceneecaeecanecenecaueecseesaeesaueesueetaeesaeess
8. gt Generation Options from the AnadigmDesigner 2 main menu or 2 Choose C Code gt Generate from the AnadigmDesigner 2 main menu then click on the Generation Options button C Code Generation Options General Reconfiguration Primary Configuration Clocks Duplicate Manes To avoid possible naming collisions with existing code every type constant variable and function name may be prepended with string Prefix all names with ah ANSI C Compliance The ANSI C standard guarantees that only the first 31 characters of an Internal name are significant E Truncate names to characters OK Cancel Help General Tab Stay with the default settings on the General Tab To avoid name collisions with any existing code all functions and variables generated can be prefixed with a string By default this string is an So the setGainHold function will be generated as an setGainHold AnadigmDesigner 2 maintains ANSI C compliance by truncating all names to 31 characters The generation engine will do the truncation intelligently and will not allow two names to collide Reconfiguration Tab The Reconfiguration Tab allows control of allocation of the memory used to store the reconfiguration data that is dynamically created in the C Code As each CAM C Code function is called by the host program configuration data is added to the reconfiguration data buffer The size of this buffer is controlled in this t
9. ration means that parts of the analog circuit or an entirely new analog circuit can be downloaded to the FPAA on the fly without the need to reset the FPAA The new configuration is activated in a single clock cycle C Code generation ensures that only the minimum amount of configuration data necessary to execute the change is generated making the reconfigurations as small and as fast as possible Using these features baseline analog functions can be downloaded into the FPAA and then updated on the fly whenever changing application requirements warrant Algorithmic Dynamic Configuration or pre compiled circuits topologies can be downloaded at will State Driven Dynamic Configuration Copyright 2004 Anadigm Inc All Rights Reserved 34 UM020800 U0010 E 7 2 Algorithmic Dynamic Configuration AN220E04 AN221E04 amp AN221E02 only Algorithmic Dynamic Configuration refers to the use of C Code by a companion host processor to actually create and download reconfiguration data for the attached FPAA on the fly in response to changing analog signal processing requirements Algorithmic Dynamic Configuration features support the initial Primary Configuration of the FPAA and subsequently allow only the programmable parameters of the analog circuit to be adjusted the circuit topology is static One example application is an adjustable filter where the number and type of filter stages is fixed but the corner frequency Q and gain are to be adjusted
10. 2 functional simulator is designed for use only with circuits in which all CAMs along an analog signal path use the same clock While it is possible for the user to mix clocks along a signal path the simulation results may not be correct for such a circuit Anadigm does not recommend using the functional simulator for mixed clock signal paths The simulator provides an expedient and convenient environment in which you can acquaint yourself with the unique Anadigm analog design environment 6 3 Signal Generators Up to eight different signal generators may be placed on your design Each generator used must be attached to an Input Cell s input pin or pin pair When the Input Cell is configured as a differential input use a signal generator with its output also configured as differential Either the g keystroke shortcut the sine wave toolbar shortcut button or the pull down menu selection Simulate gt Create Signal Generator attaches a generator icon to your mouse cursor Drag the icon to the desired Input Cell s input pin or pin pair and left click to drop it in place Right click over the generator icon to bring up its parameter dialogue window 6 3 1 Pulse Function Signal Generator Control Cl LI Nl The Pulse function allows construction of a single pulse set Pulse Period to 0 or a pulse train A control unique to the Pulse function is Pulse Delay This control allows application of the pulse to be held
11. 8 Clock 3 fys 18 le EX Lg Aa ull a A 4 NOTE Master Clock All the device s switched capacitor circuits and chopper amplifiers need a regular clock signal in order to operate predictably It is critical for AnadigmDesigner 2 to know the exact frequency of the Master Clock as nearly all programmable parameter calculations are a function of a switched capacitor clock derived directly from this frequency The top text entry field of the Chip Setting dialog box is the location to provide this information to AnadigmDesigne Chopper Clock One portion of the analog array influenced by clock frequency are the ultra low input offset chopper amps associated with analog input cells Setting a lower clock frequency for these amplifiers improves settling time while setting a higher value allows for better clock noise attenuation by the subsequent continuous time filter Sys Clock and Clock 3 0 There is a System Clock divider that takes the analog clock input frequency Master Clock fc and pre scales it down to the analog System Clock frequency fsys The system clock is further divided down to form the four clocks used by all internal switch cap circuits Clock 3 0 The final control of this dialog box establishes which of the internal clocks will be routed to the device s OUTCLK pin Copyright 2004 Anadigm Inc All Rights Reserved 19 UM020800 U0010 Chip Tab GainOfT wo Settings Cl
12. DE Show function description Cancel Show parameter arguments Highlight data types Help 7 3 4 C Code Generation Options General Tab This tab deals with general output formatting and does not affect the actual functionality of the code that is generated The settings in this tab apply to all C Code files that are generated C Code Generation Options General Reconfiguration Primary Configuration Clocks Duplicate Names To avoid possible naming collisions with existing code every ope constant variable and function name may be prepended with a string Prefis all names with ER ANSI C Compliance The ANSI standard guarantees that only the first 31 characters of an internal name are significant Truncate names bo Ia characters mg ep Cancel Help Duplicate Names To avoid possible naming collisions with existing code or simply to highlight variables and function names in the generated code when used with existing code a prefix can be added to all generated types constants variables and function names ANSI C Compliance The ANSI C standard only guarantees that the first 31 characters of a name are unique If there were two functions that were 33 characters and unique up to the last character such as function MyCall Data1 and MyCalll Data2 then the compiler would actually create two functions with the internal names MyCall Dat a
13. Destroys the reconfiguration data buffer created by InitializeReconfigData Parameters chip The ID the C Code generated for the chip This will be something like chipName or an chipName depending on the name of the chip and the generation options Return Value None Remarks This function deallocates memory and should be called after all reconfiguration processing for the chip is complete To simply clear the data in the buffer in preparation for a new configuration call Clear ReconfigData instead Example See InitializeReconfigData 7 4 5 ClearReconfigData void ClearReconfigData Chip chip Description Clears the data buffer that holds the reconfiguration data for the chip without deallocating memory Parameters chip The ID the C Code generated for the chip This will be something like chipName or an_chipName depending on the name of the chip and the generation options Return Value None Remarks It is preferable to call this function instead of repeated calls to InitializeReconfigData and Shut downReconfigData Repeated calls to these functions take time and may cause memory fragmen tation Example See InitializeReconfigData Copyright O 2004 Anadigm Inc All Rights Reserved 52 UM020800 U0010 7 4 6 GetReconfigData const Byte GetReconfigData Chip chip out int pCount Description Gets the current reconfiguration data for the chip The data begins with the synch byte and ends with the last error b
14. KAEA LAM C Code Files Generate roor CNR 7 Close CAM Code Kg Ce Help D estination Director Directory of current circuit file ad2 file ALEN NESE Dr nadigm Deliverables I M020800 00014so0urcevCode G CAM Functions API Code amp CAM Code Files There are always four files generated no matter how many chips or CAMs are present or what combi nation of generation options have been chosen The CAM C Code Files will contain functions that have been checked in the CAM C Code Functions Window or the Global CAM C Code Functions Window All checked functions across all CAMs in the circuit are output to these two files All of the API functions Copyright 2004 Anadigm Inc All Rights Reserved 48 UM020800 U0010 and configuration data are output to the API C Code Files These files may be renamed to any file name allowed by the operating system Destination Directory Every file generated is output to the same directory This output directory may be the directory of the current circuit file or a directory that is specified If the directory is that of the current circuit file then anytime the location of the circuit file changes this directory will change with it This ensures that the C Code files will always be generated in the same directory as the corresponding ad2 file If Specify Directory
15. The Preferences dialog box contains five sub dialogs each accessible through their own tabs All of the features are self explanatory but there are a few features worthy of individual mention The Display tab contains the Show wire labels check box which controls the display of all of the wire labels Without this global control labels would have to be turned off and on individually by right clicking over a wire and selecting the Hide Wire Label command This tab also contains the Enable Sound check box Some users appre ciate the audible feedback others do not Either way this control is of interest to all The Wires tab contains the controls which determine the default label font wire color and graphical wire routing style The Serial Port tab is used by AnadigmDesigner 2 to determine which serial port is connected to the target system and what Baud rate to use 3 6 Dynamic Config Pull Down Menu AnadigmDesigner 2 goes beyond just presenting an analog design environment and generating the configuration data file for the FPAA This new generation of design system also generates C Code which enables a companion microprocessor to dynam ically update the device operation by making the requisite C function calls The full details are discussed separately in Section 7 Hosted Configuration Algorithmic method State driven method Copyright 2004 Anadigm Inc All Rights Reserved 21 UM020800 U0010 AnadigmDe
16. User Manual 5 Configuration File Formats 5 1 The Serial Port Data Stream selecting the Configure gt Write configuration data to Serial Port pull down menu item or using the Ctrl w shortcut Causes AnadigmDesigner 2 to download configuration data to an attached target via a serial port The serial port used is established under the Settings gt Preferences Serial Port tab pull down menu 5 2 S Record Format A second industry standard format for transferring programming information between tools is the S Record format The file is easy to understand once you have been introduced to it The first and last couple of lines of a S Record format file for an AN10E40 are shown below 5224000000D5B72200100105C000400000000000000000000000000000000000000000000017 5224000020000000000000000000FF00000000000000000000000000000000000000000000BC 52170002400000000000000000000000000000000000002A7C S9030000FC A field by field dissection of the first S Record within a configuration file is given below 5224000000D5B72200100105C000400000000000000000000000000000000000000000000017 S2 tells downstream tools that this record s address field is 24 bits in length S1 in this location would instead indicate 16 bit of address 24 tells downstream tools that 36 hex 24 bytes follow 000000 tells downstream tools that the starting address for this data is 0x000000 D5 the first byte of configuration data the Sync Header is always D5
17. User Manual software version 2 4 0 5 TM ana www anadigm com Copyright 2004 Anadigm Inc All Rights Reserved UM020800 U0010
18. a binary file viewer was used to examine the contents of a bin file Comparing this view with the ahf file above in Section 5 3 ASCII Hex File Format an easy correlation between the 5 all zero dummy prefix bytes and the 4 bytes of the JTAG ID can be established between the two files 5 5 Why Reversed Below are the first lines of two S Record configuration files for the same design The first line is from a normal S Record file the second from a reversed The first byte of device configuration data for each record is bolded S224000000D5B72200100105C000400000000000000000000000000000000000000000000017 5224000000ABED44000880A003000200000000000000000000000000000000000000000000D2 The binary representations of the first data bytes D5 and AB are D5 11010101 AB 10101011 You can see that the bits within each data byte of the second reversed file are ordered opposite the first The reason this is done is that data comes out of a serial EPROM in the opposite order in which it was programmed in This quirky behavior of serial EPROMSs has been around since their market introduction and has simply stuck Data must be shifted into the FPAA most significant bit first If you intend to use serial EPROMs for booting an Anadigm FPAA and your PROM programmer does not take this first in last out behavior into account most do not then you will likely want to use the reversed version of either of ahf or ms2 configuration file formats C
19. am Left FX double setGainHold double G Display Options ee Ganny Right InputCell4 Only show programmable items Figure 28 Disabling C Code Generation of a Particular Function of a Particular Instance Now both the Gain_Left and Filter_Right CAMs each have one C Code function turned on and one C Code function turned off Now select the root Instance Name in the CAM Explorer using the Group By drop down menu In the Selection Pane notice that the check in box next to these two CAMs is gray indicating that some but not all of the C Code functions for these CAMs have been disabled CAM C Code Functions Instance Name Group By Instance Name j Filter Left Cancel Z al Instance Name be Filter Right Help 7 pe Filter Left E Gaininv Right de Filter Right He Gain Left E Gain_Left Display Options de Gainlry_Right Ss InputCelld EinputGellt Only show programmable items Figure 29 Composite Status of C Code Generation for all CAM Instances Copyright 2004 Anadigm Inc All Rights Reserved 39 UM020800 U0010 AnadigmDesigner amp 2 User Manual 7 2 4 Generating the Code This section will demonstrate the process for generating the C Code files It is assumed that all of the steps in the previous section have been completed Setting the Generation Options The C Code Generation Options Window can be opened by 1 Choose C Code
20. as shown to the left Likewise selecting inversion adds an inverter icon to the block diagram as a visual reminder of the setting Internal Set Point is one of the options available from the Set Point SP drop down control Selecting this option places a Set Point voltage generator inside of the FPAA This is useful in applications where the Set Point is invariant or otherwise set under control of a companion host processor using dynamic reconfiguration Circuits designed within AnadigmPID are transferred live to the FPAA instance within AnadigmDesigner 2 that was first associated with the design Wire labels SP PV and CV make for easy identification of the Set Point Plant Feedback and Controller Output respec tively Once PID PI PD or P controller design is completed manual modifications or additions to the FPAA are possible in the usual manner from within the Anadigm Designer 2 main window Further Detailed Feature Descriptions The Help menu system associated with AnadigmPID is extensive Detailed descriptions for every feature of AnadigmFilter are available for further examination 73 UM020800 U0010 AnadigmDesigner 2 User Manual Copyright 2004 Anadigm Inc All Rights Reserved 74 UM020800 U0010 TM Copyright O 2004 Anadigm Inc All Rights Reserved 75 UM020800 U0010 AnadigmDesigner 2 User Manual Copyright 2004 Anadigm Inc All Rights Reserved 76 UM020800 U0010 AnadigmDesigner 2
21. compared to the installed library replacing the CAM or IO Cell with the newer version may be appropriate Dark Yellow indicates that the instance version in the design is newer then the library or software a software update may be appropriate Print The Print command brings up a standard print dialog box Printing an open design is a great way to document the design in a concise way Both a graphic depiction of the design and textual description of its contents are delivered to your printer The first page of the printed report is a graphic depiction of the current design screen All of the design s CAMs and connections are shown along with Primary and Alternate ID values Chip Name and Load Order assignment This view is handy for the PCB designer It clearly shows the input and output pin numbers The following pages of the printed report documents all CAMs used and their parameter settings Arh amp Filter If in the course of design you elect to change one or more clock frequencies then these sheets are a handy reference to guide you back to those affected CAMs Chip Name Arb amp Filter Chip Type AN220E04 Master Clock 16000 000 These report pages also serve as a convenient design review Glock 0 2000 000 reference Clock 1 4000 000 Clock 2 1000 000 Clock 3 250 000 CAMs assigned to this chip AN20 Input Cell Version 1 0 Parameter Corner Frequency 496 Input Differential Low Offset Chopper Off
22. cursor will shift to a forbidden cursor as a visual cue that the current placement is disallowed 1 1 Tha 255 AHZ220E04 LOAD ORDER 1 i 1 1 Tha 255 AHZ220E04 LOAD ORDER 1 Cain fT wo aint fT wo Figure 4 Left Legal Connection Right The Illegal Connection Attempt is Disallowed Figure 4 contains two screen shots taken during wiring On the left the drawing pen cursor indicates that the termination point the input port of an Output Cell is a valid location to drop the wire s end Releasing the left mouse button will cause the wire to snap to this adjacent port On the right the forbidden cursor is a visual cue that the shorting of two outputs will not be allowed Use the e keystroke short cut to get back into edit mode Right click over the Input Cell being used select the CAM Settings item from the resulting pop up and convert the Input Cell to Single ended Amplifier with Anti Alias Filter Download the Configuration Data Using the Ctrl w keystroke shortcut download the configuration data into the array and look at the oscilloscope screen If you don t happen to have a Sinewave oscillator to use as a test input to the FPAA you can you can simply include the one from the CAM library Just drop it in and wire it up inter nally You are now free to change whatever you wish in the design For example double left mouse click on the center of the gain stage symbol to bring up the Set
23. match the waveform colors in the Oscilloscope Window see below 6 5 Simulation Set Up and Run Setup Simulation Simulation Time Start Time seconds End Time 0 006 seconds Time Step 31258008 seconds Iterations 192000 CS Simulation Optone C Display Equations During Simulation Run Run Only Interpreted Sim equations even if compiled are available C Display Simulation Performance Statistics Display Oscilloscope Traces Dummg Simulation Make Post Simulation Probing of All Nodes Possible Display Data Only at Nodes with Attached Probes The pull down menu Simulate gt Setup Simulation allows you to establish the start and stop time of your simulation run The units are in seconds The time step parameter is automatically calculated and inserted for you as 1 2 the period of the fastest System Clock frequency fsys Iterations refers to the number of simulation steps Time step and number of iterations is only adjusted after selecting OK or Apply Launching the simulation is accomplished using the pull down menu selection Simulate gt Begin Simulation or simply pressing the F5 shortcut key Display Equations During Simulation Run is something similar to single stepping through the simulation This feature is typically only invoked by advanced developers The simulation performance statistics can be used to show how long your simulation is taking how often each particular CAM is running a
24. off from the simu lation for a programmable number of seconds e Daer f Single ended All of the generators may be set up to drive either differential or single ended When set as differential drivers additional controls are available to set common mode and differential offset voltages Signal Data Peak Amplitude r Differential Offset 1 Volts 0 Volts Pulse Delay r Pulse Width O sec 0 sec Common Mode Offset Pulse Period 2 Volts U sec 6 3 2 Sine Sawtooth and Triangle Wave Generators Signal Generakot Contial aa Three of the signal generators Sine Ramp and Triangle share a om common set of user adjustable parameters Amplitude and Frequency are ae N self explanatory LG A af Help Fenes EE Each of these signals is symmetric about VMR Please recall that all Differential C Single ended internal analog processing is done with respect to Voltage Main Signal Data Reference VMR Setting a positive Voltage Offset shifts the entire eme 1 va applied signal up with respect to VMR The default offset of 0 Volts means E that these signals are symmetric about VMR 2 0 V w r t AVSS Frequency p Phase 20k Hz 0 Degrees Common Mode Offset 2 Volts Copyright O 2004 Anadigm Inc All Rights Reserved 29 UM020800 U0010 AnadigmDesigner amp 2 User Manual 6 3 3 Square Wave Generator Signal Ge
25. point method for setting the gain of the module It accepts Cancel floating point inputs and returns a floating point result T double fined setGainbw double G Help full floating point method for setting the gain of this module double setGainkw double G Display Options Figure 25 Disabling C Code Generation for Particular Functions of a CAM Instance Gainlnv_Right Next turn off all of the functions for low pass filter for the left channel This time use the CAM C Code Func tions Window to turn off the functions To open this window choose Dynamic Config gt Algorithmic Method and left click the CAM Functions button This window will show us the C Code functions of every CAM in the circuit organized in several different ways Copyright 2004 Anadigm Inc All Rights Reserved 36 UM020800 U0010 As it first opens the window presents a list of all the available CAM Types in the Selection Pane right side The window shows that all functions for the CAM Type ANx21 Standard GainInv are turned off This means that no C Code functions will be generated for any CAM in the circuit that is this type There is only one instance GainInv_Right of this CAM Type GainInv and all of its functions are turned off Notice that the multiplexed input cell ADdata ANx21_INMUX has C Code functions and they are turned on There is no requirement to program the multiplexed input so uncheck the b
26. returned by the function Return Value A pointer to the configuration data that can be sent to the chip Example Get a pointer to the primary configuration data int dataSize 0 const Byte pData GetPrimaryConfigData chipName amp dataSize Send the data to the chip 7 4 2 GetResetData const Byte GetResetData Chip chip out int pCount Description Gets the configuration data required perform a soft reset on the chip The data begins with the synch byte and ends with the control byte Parameters chip The ID the C Code generated for the chip This will be something like chipName or an_chipName depending on the name of the chip and the generation options pCount A pointer to a valid integer that will receive the number of bytes in the array returned by the function Return Value A pointer to the configuration data that can be sent to the chip Example Get a pointer to the reset data int dataSize 0 const Byte pData GetResetData chipName amp dataSize Send the data to the chip Copyright 2004 Anadigm Inc All Rights Reserved 50 UM020800 U0010 TM ana 7 4 3 InitializeReconfigData void InitializeReconfigData Chip chip Description Prepares the data buffer that will hold the reconfiguration data for the chip Parameters chip The ID the C Code generated for the chip This will be something like chipName or an chipName depending on the name of the chip and the gener
27. the filter and export the design to AnadigmDesigner 2 AndigmFilter will create as many FPAA instances as required and populate those instances with lower order filter CAMs complete with all the parameters set and connections made as necessary to realize the high order filter design Filters of very high order can be designed and implemented in just moments The main window of AnadigmFilter also has settings for the selection of the approximation type Butterworth Chebyshev Inverse Chebyshev Ellip tical and Bessel There are controls available for governing what sort of plot is presented Text entry boxes allow for precise textual vs graphical filter parameter input The Build Circuit button transfers information out of AnadigmFilter and into AnadigmDesigner 2 Copyright 2004 Anadigm Inc All Rights Reserved 65 UM020800 U0010 AnadigmDesigner amp 2 User Manual In the sample below the 16 pole Butterworth filter approximation of Figure 33 was transferred into the design window of AnadigmDesigner 2 This particular filter required two FPAAs however much more efficient approximations were available with the others requiring only a portion of a single FPAA The number of FPAAs required to achieve the filter is listed in the Chips column in the Approximation panel of AnadigmFilter The exclamation mark next to the Bessel approximation in the example above informs the user that there was some problem In this case the response of the
28. to the serial port to immediately see 0 1 Time 3 2 3 the effect of the new gain value x10 on the amplitude of the output Figure 1 The Simple Example Circuit in Action waveform Copyright 2004 Anadigm Inc All Rights Reserved 2 UM020800 U0010 1 3 Brief Tutorial Creating a New Circuit At this point you already know enough to start driving the design system Still it will be instructive to go through at least one from scratch design just to make sure we cover all the basics The following simple example is based on the popular AN220E04 array The completed circuit will be similar to the Gain of 2 circuit of the previous section The design steps are straight forward and have a natural flow For any design you follow the same basic steps 1 Select Adjust and Place CAMs 2 Connect the CAMs and IO Cells with wires 3 Download the configuration data to the FPAA Start with a Blank Design Window At any point you can choose File gt New and all contents of the main window will be cleared Select a CAM Click on the gts symbol Get New CAM tool button in the tool bar just above the main window or type the m keystroke shortcut to bring up the CAM Selection dialog box Use the scroll bar on the right to scroll down to the GainInv Inverting Gain Stage CAM Place the mouse pointer over it and left click to select Another left click on the Create CAM button or Enter keystroke and a ghosted image of the CAM
29. will be attached to the mouse cursor ready to be placed into the FPAA represented in the design window Once the CAM is dropped into place another left click the Set CAM Parameters dialog box associated with that CAM appears depending on the Settings gt Preferences choices made under the CAM tab CAM Selection Library HB A M ne Appro i Create CAM ANS20 Extended Comparator Comparator es ANs20 Standard Differentiator lnverting Differentiator Yes AMx21 Extended Divider Divider Yeg AMs21 Standard FilterBilinear Bilinear Filter Ves Clase a FEE 2 FilterBiquad Biquadratic Filter Yez CAM Documentation Documentation GainHalt Half Cycle Gain Stage es a Band D Half Cycle Inverting Gain Stage with Hold Ter BGaminy vetting Gan Stage 3 Y Ganpat Gain Stage with Polarity Control Bans witch Gain Stage with Switchable Inputs GainvoltageCon Voltage Controlled Variable Gain Stage Hold Sample and Hold Jeton ste Jee akar Figure 2 The CAM Select Dialog Box Adjust the CAM The contents of the Set CAM Parameters dialog box vary with the CAM selected but in general it will always contain all the user adjustable parameters available for that particular CAM In this particular instance the only parameter to set for the gain stage is its gain The realized column reflects what the FPAA will be able to actually achieve There is a cont
30. 0 000134 wo 3 32 537 D 9 16e 006 0 109 0 109 0 426 Signal Path Clock 121 21 4000 00 d dd 0 5 120 Fine Tuning Show fine tuning slider controls Filter Jt System Froperties Lus ms kHz AnadigmDesigner 2 User Manual The Properties tab is where the constants asso ciated with each leg of the controller circuit are set Controls are available for Kp Kj and Kp The desired values for each of the constants are entered in the Requested column The Realized column reflects what AnadigmPID was able to achieve The achievable ranges of each of the controls are not completely independent of one another In particular the frequency set in the Signal Path Clock declares the frequency delivered to each of the CAMs in the signal path Changing this control impacts all signal path CAMs and the range of achievable response for each Clicking on any of the hyperlinked text within this tab will open a detailed help window Determining constant values appropriate to the plant or process being controlled is beyond the scope of this introductory manual A final control in the Properties Tab is the Show fine tuning slider controls check box Selecting this control opens a window similar to the one shown below in Figure 38 This control is especially useful when combined with the Circuit gt Continuous Download to Board menu feature Using these slider controls while configu ration data is contin
31. 04 Anadigm Inc All Rights Reserved 61 UM020800 U0010 7 5 1 C Code Generate Configuration Files C Code Raw Data Output Files pon Eames Tie l i Options Destination Directory 7 Directory of current circuit file ad file D nadigm Deliverables UkM020800 00072o0urcetCode G Specify directory Close Help AnadigmDesigner 2 User Manual Very similar to the C Code generation dialog described in section 7 3 8 the C Code tab of this dialog establishes the root file names and locations for the generated files The c file will contain constant arrays with Primary Configuration and reconfiguration data difference data required for all devices declared in the chooser and functions to access that data The h file contains a prototype for the functions as well as a collection of typedefs and defines This file is fully commented for clarity The host processor uses the function calls described later in section 7 6 to gain access to the data in order to perform Primary Configurations and subsequent reconfigurations using the difference data 7 5 2 Raw Data Generate Configuration Files CCode Raw Data Output Filez All transitions in one file C 3 Each transition in separate file Destination Directory Directory of current circuit file Lal file 0 VAnadigm DeliverablesSUMO20800 U001 source Code G Specify directory
32. Anodigmbesianer 2 Untitled AM221E04 For Help Press Fi Figure 5 New Design Undocked Tool Palette 2 1 The Short Cut Buttons and Associated Keystroke Shortcuts When first invoked the program displays a docked pallet of tool buttons associated with the most commonly used functions of the software just below the pull down menu bar Because these features are so often used most of these functions also have brief keystroke shortcuts associated with them as well More experienced users will soon ignore the short cut buttons all together in favor of the speedier one and two keystroke shortcuts This toolbar can then be hidden by deselecting it in the View pull down menu Shortcut Function Ctrl n New Ctrl o FF Open Ctrl S EI Save Ctrl p amp Print m a ial gt Get New CAM d Delete Wires CAMs W _ Draw Wires g Create Signal Generator Da Create Oscilloscope Probe F5 amp Ctrl w lt 28 none F1 ke Begin Simulation About Help Figure 6 Short Cut Button and Keystrokes This particular view of the short cut palette shows it undocked from the design window and resized to a vertical aspect Considerable emphasis has been placed on the tool s ease of use and intuitive feel Conventional keystroke combinations are used for quick access to generic features such as Save Pr
33. B7220010 for Anadigm FPAAs these 4 bytes represent a unique device type identifier This is the end of S Record check byte 17 A field by field dissection of the last S Record within a configuration file is given below 59030000FC 59 tells downstream tools that this is the termination record for the file 03 byte count for remainder of record 0000 dummy data FC checkbyte Copyright O 2004 Anadigm Inc All Rights Reserved 26 UM020800 U0010 ra El 5 3 ASCII Hex File Format ASCII Hex File Format is nothing more than raw configuration data bytes represented as ASCII Hex pairs with a CR LF sequence suffixing each byte pair 00 CR LF 00 CR LF 00 CR LF 00 CR LF 00 CR LF DS CR LP B7 CR LF 22 CR LF 00 CR LF The first 5 bytes are dummy clocking data The next byte is the Sync byte The following 4 bytes comprise the 32 bit JTAG ID code for first revision AN220E04 5 4 Binary File Format The binary file format contains the configuration data with no ASCII Hex conversion BF simulator example chipi bin 00000000 og OG OG OG OG 45 b7 22 OG 80 01 05 cc 00 Oc 20 S CH ES oe OOOOO0LO OG 20 04 OO 02 OO 68 OO 08 ff OL 2a de OO ul OF edo EL e AE JUCOOOO2O Fa ce Ul 37 U1 48 AE 48 af Ul Ue 10 ff 8e OU ff sl 7 H7H7 at g O0000030 OO OO 48 St 50 3f OL OG 81 OG 01 amp 1 90 OG 10 00 ae Ue APT 2 Figure 19 Binary File Contents In the figure above
34. Bessel approximation fell outside of the gain and frequency boundaries AnadigmDesigner butterworth ad File Edit Simulate Configure Settings Dynamic Config Target View Tools Help AH221E04 LOAD ORDER 1 i Figure 34 Automatic Construction of High Order Filters Off Line Data Analysis Filter response data can be exported for off line analysis using the File gt Save Analysis File CSV menu item A csv format file is created with columns for Frequency Magnitude dB Magnitude V V Phase and Group Delay Copyright 2004 Anadigm Inc All Rights Reserved 66 UM020800 U0010 TM ana Printing The File gt Print menu command creates a multi page print out similar to the one shown in Figure 35 AnadgmFilter Version 2 4 0 2 Filter design LowP as sExa mple fd2 Page 1 of 2 AnadgmFilter Version 2 4 0 2 Filter de sign LowP as s Kample fd2 Page 2 of 2 The parameters for this filer are saved in file LowPass Example fd2 fd2 Target Chip type AN221E04 Filter Type Low Pass Approximation Ellip tic Filter is optimized for Small signal input Filter Parameters Passkand Rippk 3 dB Overall Gain 0 dB Stop Band Attenuation 733 dB Corner Fequency 1 KHz Stop Frequency 1 75 KHz M
35. C 16 checksum Enabling this option creates configuration data sets with CRC 16 checksums Please refer to the Configuration Logic section of the device User Manual for further details Configure for There are four options available under the drop down selection box associated with Configure for Microprocessor PROM Clocked PROM Crystal Fast PROM Crystal Slow Each of these options set configuration bits that control of some of the logic associated with the generation and routing of clocks Configure for Microprocessor With this selection the internal analog clock is derived from the ACLK pin In order for the analog circuitry to function as expected the ACLK pin must be driven continuously with a clock of fixed frequency External Bus Gontigured lt 40 MHz FLY LTL Figure 13 A Typical Connection Scheme for a Host Microprocessor Copyright 2004 Anadigm Inc All Rights Reserved 17 UM020800 U0010 AnadigmDesigner amp 2 User Manual Configure for PROM Clocked With this selection the internal analog clock is instead derived form the DCLK pin Accordingly it is now the DCLK pin that must be driven continuously with a clock of fixed frequency in order for the analog circuitry to function as expected SPI EPROM AN1 221E04 lt 16 MHz TLE LIL or SE E An external pull up can be eliminated if the internal pull up is used Figure 14 A Typical Connection for Clocked PROM Configure fo
36. CAM Parameters dialog box to alter the value of the gain Click OK to store the new gain value then again download the configuration data Ctrl w and look at the oscilloscope to see the effect of the new gain value Copyright 2004 Anadigm Inc All Rights Reserved 5 UM020800 U0010 AnadigmDesigner amp 2 User Manual 2 AnadigmDesigner 2 User Interface AnadigmDesigner 2 presents the user with an intuitive interface The entire program window is sizable to any practical size you feel most comfortable working in Focus on ease of use continues with a complete but not overburdened set of familiar and well organized pull down menus each containing just the options you would expect A few thoughtfully selected iconic push button shortcuts are also provided in a tear away palette that can be floated anywhere on screen The design window contains a view of the FPAA device s This depiction shows the external pins numbered for easy reference their associated Input and Output cells and a large central region which can be populated with CAMs and wiring Notice in this particular screen shot that the shortcut palette has been undocked from its default position just under the pull down menus and floated to the right of the main window It only takes a simple click and drag to tear it away and float it anywhere on the display The shortcut palette can also be docked to any of the other three sides of the main window just as easily D
37. CRC16 i Dummy Header Bytes Configure For Microprocessor Dummy Trailer Bytes PROM Clocked PROM Crystal Fast PROM Crystal Slow Restore Defaults Cancel Figure 12 Configuration File Options from Write Configuration Data File Options It is possible to have multiple FPAA instances open concurrently In such cases these options select between storing configuration data for all the devices in a single data file or into individual files Configuration Type The first time an FPAA gets loaded out of reset it requires a Primary configuration A Primary configu ration data set includes the JTAG ID for the FPAA device type and establishes the ID1 for the particular device Once an FPAA has completed a Primary configuration only a Dynamic a k a Update configu ration data set can be loaded A Dynamic configuration data set does not include a JTAG ID field Compression Options After a power on reset or after holding ERRb low for 16 clock cycles the FPAA will zero out Configu ration SRAM and stand ready to accept a Primary Configuration Since the reset put the Configuration SRAM into a known all 0 s state the only data that really needs to be transferred is non zero bytes Recall that the data blocks of a Primary Configuration are prefaced with address and byte count data A compressed configuration file isn t really compressed in the conventional sense instead it is a configu Copyright 2004 Anadigm Inc Al
38. ControlByte InhibitRdbck ControlByte EndExecute amp GetReconfigControlFlags chipName Copyright O 2004 Anadigm Inc All Rights Reserved 55 UM020800 U0010 AnadigmDesigner amp 2 User Manual 7 4 9 GetSleepData const Byte GetSleepData Chip chip out int pCount Bool powerDown Description Gets the configuration data required to put the chip into sleep mode Parameters chip The ID the C Code generated for the chip This will be something like chipName or an_chipName depending on the name of the chip and the generation options pCount A pointer to a valid integer that will receive the number of bytes in the array returned by the function powerDown If non zero all analogue functions will be turned off except the crystal oscillator If zero all analogue functions will be turned on Return Value A pointer to the configuration data that can be sent to the chip The memory containing the data is volatile The data begins with the synch byte and ends with the last error byte Example Get a pointer to the sleep data int dataSize 0 const Byte pData GetSleepData chipName amp dataSize Send the data to the chip 7 4 10 GetMasterClock Frequency GetMasterClock Chip chip Description Gets the frequency in Hz of a chip s master clock Parameters chip The ID the C Code generated for the chip This will be something like chipName or an_chipName depending on the name of the chip and the generat
39. Data chipName Change the Gain just a bit setGain chipName MyGain 6 0 Now get a pointer to the reconfiguration data int dataSize 0 const Byte pData GetReconfigData chipName amp dataSize Send the data to the chip OK Data sent now clear the buffer to get ready to call some more CAM func tions ClearReconfigData chipName Do some more changing of the gain We are all done doing C Code stuff Destroy the reconfiguration buffer ShutdownReconfigData chipName Copyright 2004 Anadigm Inc All Rights Reserved 60 UM020800 U0010 ra El 7 5 State Driven Dynamic Configuration AN220E04 AN221E04 amp AN221E02 only State Driven Dynamic Configuration is the use of C Code by a companion host processor to access and download pre compiled reconfiguration data for the attached FPAA s Unlike Algorithmic Dynamic Configu ration State Driven Dynamic Configuration does not generate C Code for the host processor to create FPAA configuration data State Driven Configuration instead creates pre compiled data sets and just two C Code function calls for access to that data for compilation into the host program When using Algorithmic Dynamic Configuration only CAM parameters can be adjusted With State Driven Dynamic Configuration the entire circuit topology can be changed the updated circuit can adjust just a single CAM parameter or replace the complete contents and connectivity
40. ER 1 i name b X chip 1 chip 1 Figure 11 Left Wire Drag Right Label Drag The left side of Figure 11 is a screen shot showing a typical wire drag in action When in edit or wire modes if the cursor gets sufficiently close to a wire small square grab handles will activate on each segment of the wire and the cursor will switch from an arrow or drawing pen to double headed arrow Left clicking and dragging one of these grab handles with this new cursor allows the associated line segment to be dragged orthogonally The attached segments stretch to accommodate the move The right side of Figure 11 is a screen shot showing a typical wire label drag If the mouse cursor gets sufficiently close to a wire label the cursor will switch from a pointer or pen to a pointer with small I beam and 4 way arrow icons adjacent Left clicking and dragging at this point allows the label to be moved to another valid location Valid locations for wire labels are all within close proximity to the wire itself Enter Delete mode The Enter Delete mode command or its d keystroke shortcut is used to delete placed CAMs or connections in a design Once in the Delete mode the cursor gets an X symbol added to it Just left click over the unwanted CAM or connection element and it disappears from your design 3 3 Simulate Pull Down Menu AnadigmDesigner 2 comes with a built in functional simulator The simulator Au Create Si
41. Instance name and clock frequency Notes Symbol seres Nate FilterBiquad1 This is an inverting filter See the transfer function in the CLOCKA kHz Man CAM Documentation Cancel Help CAM Options Filter Type GI Low Pass CY High Pass Band Pass C Band Stop Documentation Input Sampling Phase 1 3 Phase 2 Polarity Inverting O Non inverting eae CAM Parameters Parameter Limita Realized Comer Frequency kHz ER 8007s 100 41 0 Gain 80 0 0976T0100 80 0 Quality Factor 0 05007015 0 0 706 Figure 9 A Typical Set CAM Parameters Dialog Box The feedback elements of a CAB are restricted to a limited set of discrete values so the realized numbers may be slightly off from your input numbers This quantization error is demonstrated in the sample above The achieved filter Quality Factor is 0 706 just slightly off from the specified 0 707 AnadigmDesigner 2 automatically optimizes CAB programming to adjust for optimal performance while realizing parameters as close as possible to the desired values Changing the clock frequencies within the array after a CAM has been placed and parameterized may affect its response If it is necessary for you to change a clock setting after your CAMs are placed and parameterized then you will need to go back and right click on all the CAMs assigned to that clock and make the appropriate corrections Additional details on each of the parameters limits and perf
42. Ose amp ais 4 Asm D SW AH221E04 LOAD ORDER 1 i Figure 24 Example Circuit for C Code Generation Copyright 2004 Anadigm Inc All Rights Reserved 35 UM020800 U0010 AnadigmDesigner amp 2 User Manual 7 2 2 Choosing Functions to Generate After completing the design of a circuit a decision must be made as to which parts of the circuit will need to be dynamically reconfigured With this information in hand C Code functions from each CAM in the circuit should be generated into the C Code 7 2 3 Choose the CAM C Code Functions For this design example assume the need to dynamically reconfigure the high pass filter on the right channel and the gain stage on the left channel By default all CAM C Code functions are on In order to generate compact C Code turn off the function generation for the CAMs that will not be dynamically reconfigured To bring up the C Code functions for a particular CAM 1 Right click on the CAM and choose C Code Functions from the pop up menu Or 2 Right click on the CAM and chose CAM Settings then click on the C Code button Using one of these methods open the C Code Functions Window for the gain stage on the right channel The CAM instance name GainInv_Right appears in the title bar as a convenient reminder There is no need to dynamically reconfigure this CAM so deselect all of the functions it offers Gaininv Right C Code Functions Gain fall fixed
43. Reserved 20 UM020800 U0010 TM ana 3 5 2 Preferences Preferences Chip CAM wires Serial Fort Display Preferences Insert New CAM Routing Method Be CN L Straight Line Routing IE Right Angle Routing Vertical Start ES amp Right Angle Routing Horizontal Start Wire Color EI C Yellow gt Green T Blue Other Select Color Wire Labels Display settings dialog upon creation of new CAM Preferences Chip CAM Wines Serial Port Display Wire Label Show wire labels Sound Settings Display label when new wire created Enable Sound Preferences Preferences Chip CAM Wires Serial Port Display Chip CAM Wires Serial Port Display Select Senal Port Chip Type EE ATEN USB to Serial Cable Default type for new chips EGET Interrogate target board and autoplace chips Status of selected port Port is available and ready for use Master Clock Frequency fc Default frequency for new chips i 16000 kHz Configuration Output C Use CRC16 in configuration data Applies to serial download and Code only There iz separate setting for configuration FILES via button on the file selector box Select Serial Baud Rate 57600 Figure 16 Chip CAM Wires Serial Port and Display Preferences
44. TM ana AnadigmDesigner 2 User Manual IMPORTANT NOTE Maintanence and updates to the document were frozen in year 2004 revision 2 2 7 of AnadigmDesigner2 This document is superceeded and replaced by the extensive help and Documentation included with and inside the software tool intself AnadigmDesigner2 Some users may find this document useful as a single printable file BEWARE IT IS NOW OBSOLETE MANY IMPROVEMENTS AND ENHANCEMENTS TO AnadigmDesigner2 ARE NOT DOCUMENTED HERE Copyright 2004 Anadigm Inc All Rights Reserved UM020800 U0010 TM AnadigmDesigner 2 User Manual ana Anadigm s second generation AnadigmDesigner 2 EDA tool lets you design and implement dynamically reconfigurable analog circuits within a matter of minutes Build your circuit by dragging and dropping Config urable Analog Modules CAMs each of which can be used to implement a range of analog functions for which you set the parameters AnadigmDesigner 2 includes a time domain functional simulator which provides a convenient way to assess your circuit s behavior without the need for a lab set up The simulator s user interface is intuitive and easily learned Most of the steps are the same that you would take while bench testing Whether or not you re an analog expert you can build a complete analog system rapidly simulate it immediately and then just point and click to download it to an FPAA chip for testing and validation
45. When the Dynamic Config gt State driven method menu item is selected a chooser window pops up Designs for which configuration data is to be compiled are added to this chooser window Using the Add Circuits control the designs may be imported from the active design session using the From Chips option of this control Designs may also be imported by using the From Circuit Files in the form of existing AHF configuration files State driven Dynamic Configuration Circuit DevicelD Type Source don Generate chip3 AN221E04 Chip ebe ANZ20E04 Chi beer DD controller chipl 3 AN221E04 AHF Close Add Circuits Remove Selected gt Full primary configuration will be generated Function naming for Algorithmic Dynamic Configuration is based on the chip name e g chip2 In State Driven Dynamic Configuration the grouping of designs is by DevicelD ID1 At least one version of each chip of each DevicelD must have a full Primary Configuration data set generated All other chips of the same DevicelD will get difference data generated The resultant compiled data file s covering several chips can thus be quite compact Left clicking the Generate button will open up a next level dialog box which establishes values for various parameters associated with C Code and Raw Data file generation for State Driven Dynamic configuration Copyright 20
46. a Gets the configuration data required to put a chip into sleep mode Clock Functions GetMasterClock Gets the frequency in Hz of a master clock GetClockDivisor Gets the current value of a clock divisor SetClockDivisor Sets the value of a clock divisor IncrementClockDivisor Increments the current value of a clock divisor to the next valid divisor value DecrementClockDivisor Decrements the current value of a clock divisor to the next valid divisor value ClockUpdatesFinished Clears Update_CLKS bit CAM Functions Nearly all CAMs offered in the library have some programmable parameters controlled by associated func tions There are too many to list explicitly here Generation of these functions is covered in more detail in Section 7 3 1 CAM C Code Functions Window Copyright 2004 Anadigm Inc All Rights Reserved 49 UM020800 U0010 AnadigmDesigner amp 2 User Manual 7 4 1 GetPrimaryConfigData const Byte GetPrimaryConfigData Chip chip out int pCount Description Gets the configuration data required to perform a primary configuration The data begins with the synch byte and ends with the last error byte Data must be shifted into the FPAA most significant bit first Parameters chip The ID the C Code generated for the chip This will be something like chipName or an_chipName depending on the name of the chip and the generation options pCount A pointer to a valid integer that will receive the number of bytes in the array
47. ab Check the Enable automatic growth to avoid buffer overrun Primary Configuration Tab This tab selects the devices that will be configured initially using C Code Leave the box next to the device name checked Clocks Tab The clocks tab allows selection of the devices for which dynamic reconfiguration of clock divisors is required Leave this unchecked for now Copyright 2004 Anadigm Inc All Rights Reserved 40 UM020800 U0010 Creating the C Code Files To create the C Code files open the Generate C Code Window Do this by choosing C Code gt Generate from the AnadigmDesigner 2 main menu This window allows us to choose the names of the files that get generated and specify the directory where they will be created Keep the default file names and generate them to the same directory as the circuit file Generate C Code APLC Code Files CAM C Code Files ApiCode Egi CAMCode mee ApiCode CAMCode l Destination Drechom G Directory of current circuit file ad2 file Generation Options D nadigm Deliverables YU M020800 0001s0urcetCode G CAM Functions CO Specify directory uaan E il AIG MAG GN L JOE riot tit Everything is now ready to go Press the Generate button to create the files A prompt will appear that asks for confirmation to overwrite the files if they already exist After the files are generated AnadigmDesigner 2 in
48. ailable CAB 1 CLK available Fund ai i i i i en ei available CLK 0 gt available PR AA AR PR FA s AS FA availab kaL M availabl dx n d dn dn die di ed available available Gap oam comp available chip 1 chip 2 Figure 18 Left Click on the Triangle to bring up the Power Estimate Resource Panel Copyright 2004 Anadigm Inc All Rights Reserved 24 UM020800 U0010 ra El 4 3 Very Low Power Dynamic Sleep Mode Section 7 covers the entire C Code generation topic in detail but this particular feature warrants mention here AnadigmDesigner 2 can automatically create C Code representing the entire design The C Code includes a function to generate a configuration data set that will put the device into sleep mode Typically a host processor calls the GetSleepData function then reconfigures the device with the resulting configuration data placing the AN220E40 into a very low power Dynamic Sleep mode In Dynamic Sleep mode all analog functions are turned off except the crystal oscillator In Dynamic Sleep the device will consume power in the range of only 1 mW to 10 mW This function returns a pointer to a volatile memory block If you wish to retain the data you must copy it into a separate buffer More detail on this low power sleep enabling function can be found in Section 7 4 9 GetSleepData Copyright 2004 Anadigm Inc All Rights Reserved 25 UM020800 U0010 AnadigmDesigner amp 2
49. aster Clock Frequency 2e 007 KHz CAM Clock Frequency 492611KHz The following Anadgm CAMs are nee dto realize this filter Chip FILTERO Instance Clock Moduk Type Phase Fo KhzDC Gn HF Gn Q CAM Staged ClockA 0 FILTERBIQUAD BS 1 0 327 14 1 0 0392 1 06 CAM Stage1 ClockA 0 FILTERBIQUAD BS 1 0 757 0 382 0 0392 3 84 CAM Stage2 ClockA 0 FILT ERBIQUAD BS 0 981 0 132 0 0392 155 Figure 35 Sample Print Sheets from AnadigmFilter Copyright 2004 Anadigm Inc All Rights Reserved 67 UM020800 U0010 AnadigmDesigner amp 2 Preferences User Manual The only other controls that need any detailed explanation are associated with the Preferences menu item AMZ20E04 AMLZ0E04 II Anadiemfilter LowPassExample fd File View Preferences Hep i ai g d eee Ke Er w ANZ21E04 AN1Z1E0 4 Select Target Chip Type Filter Input Phase ON ZE Plot Frequency Range Decades to Flot iw Automatic Range Select Figure 36 Menu Sub ltems Under the Preferences Menu Heading zen The controls contained within the Preferences menu tell AnadigmFilter what FPAA type it should map the filter design into and which phase of the clock the input signal should be sampled on The input phase selection is usually of not much consequence as the signal is typically coming from outside the chip There are also a set of controls governing the appearance of the AnadigmFilter plot window Further Detailed Feature D
50. ation options Return Value None Remarks This function must be called before calling any other reconfiguration functions for the chip This function allocates memory To deallocate the memory call ShutdownReconfigData However to simply clear the data in the buffer without memory deallocation call ClearReconfigData Example Get a pointer to the primary configuration data int dataSize 0 const Byte pData GetPrimaryConfigData an chipName amp datasize Send the data to the chip Initialize reconfiguration data before using any CAM function InitializeReconfigData an chipName Calculate changes to CAM parameters then use CAM C Code Get a pointer to the reconfiguration data int dataSize 0 const Byte pData GetReconfigData an chipName amp datasize Send the data to the chip OK Data sent now clear the buffer to get ready to call some more CAM func tions 7 ClearReconfigData an chipName Calculate new changes to CAM parameters then use CAM C Code Get a pointer to the new reconfiguration data const Byte pData GetReconfigData an chipName amp dataSize Send the data to the chip End of program clean up reconfiguration data ShutdownReconfigData an chipName Copyright O 2004 Anadigm Inc All Rights Reserved 51 UM020800 U0010 AnadigmDesigner amp 2 User Manual 7 4 4 ShutdownReconfigData void ShutdownReconfigData Chip chip Description
51. ctive chip If there are multiple chips in the design window the active chip is highlighted with a red border If there is a single chip in the design window then it is the active chip Clocks Tab GainOfTwo Settings F The AnadigmDesigner 2 design window allows for more than one chip instance to be open at a time It is most likely ee the case and is the recommended situation that each of Vgl Deepen TA the devices are driven off a common clock but this is not a requirement lt is therefore necessary to provide a dialog box for chip level clock settings for each of the devices in the design The Clocks tab of the Active Chip settings EE selection from the Settings pull down menu provides such 4000 000 a dialog box 16000 000 2000 000 Parameters set in this tab of the dialog box only apply to 250 000 the chip instance that currently has focus in the design window the active chip This in reinforced in the title bar of the dialog box The chip s name becomes part of the title bar This is the same name displayed in the bottom center Ba AM parameters should be vei for al marked CAMs of the chip graphic in the design window The chip name is D RACA Ship Segara Sangen used in the generation of C code explained more fully in Section 7 Hosted Configuration T Ges Clocks Chip Clock Dividers Chopper Clock fe 64 oF 250 00000 Sys Clock feyst for 1 Clock 0 fays 4 Clock 1 fays TR Clock 2 faye 4
52. d that moment s instantaneous voltages for each of the channels Its also instructive to review the DC response of the circuit at this point in time The input waveform data Channel 1 happened to end with an amplitude of 144 64 mV Being a piece wise linear arbitrary waveform the simulator holds the final value in place Oscilloscope simulator_example ad Display Data Volts Per Division Position voltage 144 64 mv 2 AA Ca mu 44 04 f Time Per Division 50 us E Time 5483 ms Start 4 750 ms 5 250 ms Grid Cursor Save Figure 22 End of Simulation Detailing Circuit Behavior as Stimulus goes to DC The Band Stop filter Channel 3 was centered at 14 kHz Obviously then DC is in one of the pass bands With a gain of 1 you can see that the input voltage scaled by exactly 1 to yield a 144 64 mV output Likewise for the Low Pass The comparator output on Channel 4 is railed low Copyright O 2004 Anadigm Inc All Rights Reserved 32 UM020800 U0010 7 Hosted Configuration The preceding chapters of this manual dealt primarily with the use of AnadigmDesigner 2 to generate static configurations for one or more devices The simplest use model involves designing the analog circuit saving the associated configuration data file and programing a serial EPROM with that data file The FPAA can then configure itself on power up from that EPROM While statically configured programmable analog provides system
53. designers with a powerful new resource the true advantages of programmable analog can not be fully appreciated until the FPAA is hosted by a companion processor and its configuration is conducted as a response to changing system requirements This chapter discusses the following hosted operations Algorithmic Dynamic Configuration State Driven Dynamic Configuration and static configuration It is assumed that the reader is familiar with the use of AnadigmDesigner 2 for static configuration design embedded system software design using C language and the FPAA device features including the details of the configuration interface 7 1 Hosted Operation All of the Anadigm FPAAs include a flexible configuration interface that is easily connected to companion microprocessor The AN120E04 and AN121E04 devices are best suited to systems where the FPAA will normally be configured at power up or after system reset The configuration interfaces of the AN220E04 AN221E04 and AN221E02 devices include special functionality which allows for reconfiguration data to be loaded into the device on the fly without the need to reset the device Dynamic Configuration External Bus Gontigured lt 40 MHz TLE LI Figure 23 A Typical Host Connection to an AN120E04 or an AN220E04 7 1 1 Understanding the Difference Between Static and Dynamic Configuration AnadigmDesigner 2 creates several different types of data and C code source files in support of stat
54. dicates that C Code was generated with success The functions are now created and host programming using the C Code API can begin 7 3 Controls Reference Algorithmic Dynamic Configuration 7 3 1 CAM C Code Functions Window Right click over a CAM and select C Code Functions This window displays the available C Code functions for that particular CAM Filter Left C Code Functions Corner Frequency Gain amp Q Ir This function controls the corner frequency san and Q of this filter Cancel FT void SeiB QLowPassFilterl double Fo double G double 0 LowPass Capacitors te ZP This function directly sets the capacitors for this CAM It does not perform any validation of the data for correctness Display Options E void SetB QLowPass Caps Byte C1 Byte C2 Byte C3 Byte C4 Figure 30 C Code Functions Window for Instance Filter Left Copyright 2004 Anadigm Inc All Rights Reserved 41 UM020800 U0010 AnadigmDesigner amp 2 User Manual Function Display Only functions relevant to the current CAM options as set in the Set CAM Parameters window will be displayed In the example shown above the CAM is set up to be a low pass filter Had it been setup to be a high pass filter a different set of functions would be available Functions are grouped in sets as shown by the Corner Frequency Gain amp Q set and the LowPass Capacitors set in the window above These sets are defined by th
55. e tool is accessed via the 7ools gt AnadigmFilter menu selection TI AnadigmFilter Untitled File Viem Preferences Help DEHAT Passband Ripple O 0ito 9 99 Passband Gain 10 to 10 St EEEF C EH S Stop Band Atten CE a H ee E 5 0 to 80 EH S Corner Freq Low tet gt er 0 01Hz to SMHz Stop Freq Low 0 01Hz to SMHz ULUPA Gai MAS Lon megi Alan LLU bee Geese Master Clack Freq 100kHz 20MHz CAM Clock Freq 50 251 1Hz to 20MHz Override CAM Clock Freg Filter Type 3 proximation Wl Dynamic Range Opt Poles Chips Mae e Butterworth 16 2 Magnitude dB ai HighPass Chebyshev S 1 T Magnitude V W l Band Pass Inverse Chebyshev 8 I Phase Deg oe Build Circuit Band Stop Y Elliptic 6 l T Phase Rad Group Delay 5 0 Bessel L List CAMs kHz Figure 33 The AnadigmFilter Main Window The main window of AndigmFilter contains all of the controls that will be of interest to most uses Designing and implementing a filter can be achieved in four steps The figure above has numbered annotations to match these steps Tell AnadigmFilter the Master Clock frequency Select the desired type of filter Low Pass High Pass Band Pass Band Stop Drag the filter response limit boundaries to the desired frequency and gain settings Left click the Build Circuit button e YS Anadigm Filter will design
56. e CAM and group related functions Figure 30 shows function descriptions function names in bold parameter arguments and highlights the ANSI C data types The display style is configurable from the C Code Display Options window Code Generation lf a function is checked it will be included in the generated C Code An ID representing the CAM instance will be created This ID will be passed as the first parameter to the generated function to indicate which CAM instance to act on If a function is not checked in this window it is still possible the function will be generated if there is another CAM instance of the same CAM type which has checked the function However even though the function is generated it is not possible to use the function within the C Code for CAMs that did not check the function as the necessary ID s and supporting code would not be generated 7 3 2 Global C Code Functions Window select Dynamic Config gt Algorithmic Method left click the CAM Functions button and expand each level of the hierarchy This view allows full control over what functions get generated for all CAM instances CAM C Code Functions Group By Gain CAM fine i WE full fixed point method for setting the gain ofthe module It accepts Caneel floating point inputs and returns a floating point result EL CAM Type 4 E double fixed_setGainHold double G Help g AD data ahs INMUA amp D SEN FF full
57. e is no interaction with the currently installed libraries when simply opening a ad2 file or adjusting CAM or IO Cell parameters in an existing design The Check Sheet command however forces a comparison between the loaded design and the currently installed libraries and software Any CAM or IO Cell version differences between the instantiated components of the design and the current library and software installation are discovered and highlighted Invoking the Check Sheet command results in a pop up information window arranged in columns The CAM Versions tab presents the fully qualified CAM instance names of the current design in the first column the library names from which the CAMs were originally selected in the second the CAM types in the third and in the fourth the most recent version of that CAM available in the current library of the same name if installed from which the CAM was originally selected The lOCell Versions tab brings up similar information comparing the design s instantiated IO Cells with the IO Cells available in the current installation directory structure of the software Status of the version checking for both the CAMs and IO Cells is color coded Dark Green text indicates that the version of the component instantiated in the design matches what is available in the software installation Dark Red indicates that the CAM or IO Cell was not found in the installed library Dark Blue indicates that the instance version is old
58. election Panel If a box is checked all functions for CAMs of that type are on If it is not checked all functions for CAMs of that type are off CAM Type x ADdata ANx21 INMUX x ANx21 Standard FilterBiquad X ANx21 Standard GainHold x ANx21 Standard GainInv When selecting an actual CAM type in the CAM Explorer such as ANx21 Standard Biquad the Selection Panel displays all functions available from all configurations of CAMs of that type If a function is checked here the function will be on for all CAMs of that type Corner Frequency Gain amp Q This function controls the corner frequency gain and of this filter DN void SetBQLowPassFilterl double Fo double G double 0 LowPass Capacitors It This function directly sets the capacitors for this CAM It does not perform any validation of the data for correctness Ix void SetBOLowPassCaps Byte C1 Byte C2 Byte C3 Byte C4 If a single CAM instance is selected in the CAM Explorer such as Filter Left the Selection Panel is then identical to the CAM C Code Functions Window Grouping by Instance Name CAMs are sorted alphabetically by instance name Selecting the Instance Name root in the CAM Explorer causes the Selection Pane to present a list of CAM instances If an instance is checked all of its C Code functions are on If it is not checked none of its C Code functions are on It is possible for the check to be in an intermediate
59. es in the selection Panel then only represent those things that are associated with the selected item in the CAM Explorer For instance if ANx21 Standard Gaininv CAM Type is selected under ExampleChip removing the checks in the boxes for ANx21 Standard GainInv will turn off all functions for only the ANx21 Standard GainInv Type CAMs that are in ExampleChip In the following example the C Code functions for the ANx21 Standard GainInv CAMs in ExampleChip are turned off but this will not affect the C Code functions for the ANx21 Standard GainInv CAMs in TestChip CAM C Code Functions Group By Fr CAM Type ChipName 7 ADdatay ANXZ1 INMUX Keen sall GO Chip Name Fl ANx21 Standard FilterBiquad en ECR ExampleChip E ANx21 StandardyGainHold El ah Instance Name ce CAM Tope C ANx21 Standard GainInv Display Options CH TestChip mm E ah Instance Name E Fe CAM Type E E ADdeta A2 INMUS E E AH211 StandardyFilterBiquad A Nx21 StandardiyGainHold B ANx21 StandardyGainlnv Only show programmable items Figure 32 Generating Code for Multiple Devices Copyright 2004 Anadigm Inc All Rights Reserved 44 UM020800 U0010 7 3 3 C Code Function Display Options This window presents options that affect the display of the CAM C Code Functions Window and the Global C Code Functions Window The options are self explanatory C Code Display Options Show function name m bold face
60. es labeled with the same name will not result in a short A single left click over a net name will convert the cursor into a familiar blinking vertical text insertion cursor New wire label text can then be entered in the normal way A wire label may be up to 20 char acters long If the net does not happen to have a name visible there are two possible reasons The first and least likely is that the wire label is nothing but space characters If this is the case the only way to find the label in order to change it is to move the edit mode cursor along the length of the wire until the arrow cursor converts to a arrow with an adjacent I beam symbol A single left click at that point will cause the text insertion cursor to activate within the wire label The more likely scenario is that the label for the wire is selected to be 7 Connect Wire hidden A single right click over the wire itself will cause the wire to highlight Reroute Wire pb indicating its selection and the associated selection box pop up will appear p Deselecting the Hide Wire Label checkbox will result in the wire label re Hide Wire Label i i i be Both wires and wire labels can be moved to create a more visually pleasing Chip Settings schematic representation of your design Delete Wire Copyright 2004 Anadigm Inc All Rights Reserved 13 UM020800 U0010 AnadigmDesigner amp 2 User Manual 1 1 Tha 255 AM221E04 LOAD ORDER 1 e 1 1 Tha 255 AHZ221E04 LOAD ORD
61. escriptions The Help menu system associated with AnadigmFilter is extensive Detailed descriptions for every feature of AnadigmFilter are available for further examination Copyright 2004 Anadigm Inc All Rights Reserved 68 UM020800 U0010 ra ER 9 AnadigmPID AnadigmPID is a powerful design aid for the creation of closed loop control circuits The tool uses Proportional P Integral 1 and Derivative D building blocks to construct common closed loop controller circuit topologies including P Pl PD and PID forms The primary design inputs are simply the gains for each leg of the controller circuit Controller circuit design data is automatically and continuously transferred from AnadigmPID into AnadigmDesigner 2 and optionally onto a hardware evaluation platform Creation of a closed loop controller circuit begins with opening a new circuit within AnadigmDesigne ED F AnadigmDesigner Temp Controller ad File Edit Simulate Configure Settings Dynamic Config Target View Tools Help DSE ab Za ae Tr 3 Although the FPAA instance of the new design window o i is empty it will be convenient at this point to name the AN221ED4 LOAD ORDER 1 instance something meaningful and to also save the AD2 file under a meaningful name Temp Controller AnadigmPID is invoked from the Tools gt Circuit Options AnadigmPID menu selection When the AnadigmPID is first invoked it needs to know what FPAA instance to Cu
62. esigner 2 will give you the opportunity to save your changes before exiting 3 2 Edit Pull Down Menu FE insert new CAM m The items under this menu constitute those features through which the majority of anger demic the work gets done As you become familiar with the software you will probably cut ui Soon abandon GUI access to these features in favor of the m e w and d keystroke Copy Chr short cuts A Paste Cl Delete Del Insert new CAM Selecting and placing a CAM begins with a pull down menu selection of Edit g Enter Edit Shift mode e Insert New CAM or its md keystroke shortcut The CAM Selection window will 7 Enter Wire mode w pop up next with available CAMs in a scrollable window in the right half of the BE Enter Delete mode D pop up CAM Selection Library ll Ca Name Appr Create LAM AMx30 Extended Comparator Comparator Yes ANN Standard Differentiator lnverting Differentator Yes CAM Documentation AN 21 Extended Divider Divider Yez ANs21 Standard FilterEilinear Bilinear Filter Yes FRE FilterBiquad Biquadratic Filter Yez GainHalt Half Cycle Gain Stage es a GainHold Half Cycle Inverting Gain Stage with Hold keel inverting Gam Stage GainPolarity Gain Stage with Polarity Control GainSvitch Gain Stage with Switchable Inputs GainvoltageCon Voltage Controlled Variable Gain Stage Hold Sample and Hald Figure 8
63. floating point method for setting the gain of this module D I ANS Standard FilterBiquad D eelere Display Options J Filter Left J Filter Right IS Nx21 Standard G ainHold je Gam Lett B AN 21 StandardiGainlnv de Gainlny Right Only show programmable items Figure 31 Hierarchical View of all CAM Instances Only Show Programmable Items When checked lower left of window the window will only display CAMs which are programmable via C Code If there are CAMs in the circuit but none are C Code programmable then no CAMs will be shown in this window If the box is not checked all CAMs in the circuit are listed in the window regardless of their C Code programmability Selection Panel The window on the right displays check boxes next to items that can be turned on and off The items available in this window depend on what is selected in the tree on the left A check means that C Code will be generated for that item Copyright O 2004 Anadigm Inc All Rights Reserved 42 UM020800 U0010 CAM Explorer The window on the left is the CAM Explorer Using it it is possible to group CAMs in three different ways as selected by the three choices in the Group By selection drop down menu Grouping by CAM Type CAMSs are sorted by their type which is their library and unique CAM name within that library Selecting the CAM Type root in the CAM Explorer gives a listing of all CAM Types with check boxes in the S
64. g delimiter for csv files A spread sheet program is a handy utility to use when generating piecewise linear signal data files Values may be expressed in either decimal or scientific notation format When expressing time values in scientific notation format be sure to use as many decimal places as necessary to establish each time value as unique The simulator requires that a piecewise linear waveform be presented with monotonically increasing time values Too few digits in the time representation and the simulator will recognize two adja cent time stamps to have the same value An error will be reported The wav File Format Experienced PC users are familiar with wav format sound files The waveform sample rate is encoded in the wav file so there is no need for a user entry Only PCM encoding is recognized Only the first channel of information typically Left is processed Copyright 2004 Anadigm Inc All Rights Reserved 30 UM020800 U0010 H A E 6 4 Oscilloscope Probes Up to four different Oscilloscope Probes may be placed on your design They may be placed on any active wire CAM input or output or any Input or Output Cell Hi 37 Either the p keystroke shortcut the probe toolbar shortcut button or the pull down menu selection Simulate gt Create Oscilloscope Probe attaches a probe icon to your mouse cursor Drag it to the desired location and left click to drop it in place The color coded probes
65. gmFilter Enter Wire mode e AnadigmFID Enter Delete mode Create Signal Generator Help Topics Create Oscilloscope Probe SC What s This Context Help Setup Simulation About Snadigmbesigner2 Begin Simulation Figure 7 An Overview of All Available Menu Items Copyright O 2004 Anadigm Inc All Rights Reserved 7 UM020800 U0010 AnadigmDesigner amp 2 User Manual 3 Detailed Reference Guide This section is devoted to providing a detailed description of the basic menu items of AnadigmDesigner 2 Descriptions of the more comprehensive features are reserved for individual sections Section 6 Functional Simulator Section 7 Hosted Configuration Section 8 AnadigmFilter and Section 9 AnadigmPID 3 1 File Pull Down Menu New Oper MED Save Save 45 Check Sheet fy Print Prink Preview Prink Setup Register 1 Gain of 2 ad 2 Gain of 2 ad Exit Save Ctrl h Chr CtrlH5 F4 Ctrl P New The New command creates a from scratch design window If there is a design currently open that has been modified since its last save invoking New will result in the program prompting for a save of the current work prior to opening a fresh design window Open The Open command will display a standard file selection dialog box In the context of AnadigmDesigner 2 you will be browsing for a ad2 file containing a previously saved design If the contents of the current design windo
66. gnal Generator G WA Create Oscilloscope Probe P provides a convenient way to analyze your circuit designs whenever you are away E from your test bench Section 6 Functional Simulator covers this portion of the Fee SS design system in much greater detail but for the sake of easy reference the pull down menu items are briefly described below Create Signal Generator The Create Signal Generator command or its g keystroke shortcut will attach a signal generator icon to the mouse cursor Drag the icon over to the desired Input Cell s internal connection port and use a left click to drop it in place A right click over the generator icon will bring up a programmable parameter dialogue window Up to 4 signal generators are allowed in the design to provide simulation stimuli Create Oscilloscope Probe The behavior of this menu item is very much the same as described for Create Signal Generator This menu selection or its p keystroke shortcut instead leaves an oscilloscope probe icon attached to the mouse cursor A left click over any valid wire connection point drops the color keyed probe in place Up to 4 of these probes may be placed in the design in order to monitor simulation results Copyright 2004 Anadigm Inc All Rights Reserved 14 UM020800 U0010 L Setup Simulation The Setup Simulation command pops up a simulation setup dialog window The details for various entries in this window are discussed in detai
67. h mode or a Low ene Power mode In the Low Power mode all of the CAB circuits are tor Applies to configuration files only Serial download to biased for low power operation development board remains Unchanged CAM t hould b ified for all marked CAM i i te SEGA E The power consumed by a design in the Low Power mode ranges from one third to one half of the power consumed by the same design in the High Bandwidth mode When the Low Power mode is selected a symbol appears on top of the CAMs placed in the design This symbol warns the users to open the CAM dialog box and make sure the settings are correct for the Low Power mode Cancel Help The Low Power mode is currently being characterized to determine the effect of lower biasing on the bandwidth performance of the different CAMs Until then customers using the Low Power mode are advised to verify their designs on the bench 4 2 Power Estimator There is a Resource Panel that can be accessed by left clicking on the small triangle on the right side of the chip schematic The Resource Panel includes a power estimate which is completely interactive and reflects a live power estimate as the design changes Estimated power consumed is expressed in mW and the software provides a first order approximation of the variability inherent in the estimate 1 1 Ta 255 AHZ20EN4 e ID1 2 ID 255 AN220E04 LOAD ORDER 2 13 Power 135 40 mir LUT available counter av
68. hen designs span more than a single FPAA device Refresh No operating system s graphics sub system is without flaw On rare occasions distracting graphic arti facts may interfere with the presentation of more useful information within the design window A quick swipe of the r keystroke shortcut for this command will force a screen redraw and this always immedi ately remedies the annoyance 3 9 Tools Pull Down Menu This is where extensions to the basic AnadigmDesigner 2 program get plugged in Among iii the first of these extensions available are AnadigmFilter and AnadigmPID AnadigmFID AnadigmFilter AnadigmFilter is an intuitive but extremely powerful filter design tool mated to AnadigmDesigner 2 AnadigmFilter accepts basic filter parameters as inputs and immediately returns the required CAMs along with CAM parameter and connection settings to AnadigmDesigner 2 Filter synthesis of nearly any practical order and type is immediate and sure Please refer to Section 8 AnadigmFilter for full details AnadigmPID AnadigmPID is a powerful design aid for the construction of Proportional Integral Derivative control circuits Please refer to Section 9 AnadigmPID for full details Copyright O 2004 Anadigm Inc All Rights Reserved 22 UM020800 U0010 3 9 1 Help Pull Down Menu Help Topics To p i CS ki What s This Context Help This control brings up the familiar help window which provides access to a wel
69. ic and dynamic configuration Static Configuration Using the basic features of AnadigmDesigner 2 it is easy to create circuits and their associated config uration data sets for both AN12xE04 and AN22XxE0x devices Using a host processor a static configu ration data set can be simply transferred to the FPAA It is of course possible for a host processor to store several complete configuration data sets and completely reconfigure the attached FPAA s whenever desired For an AN120E04 and AN121E04 devices a reset sequence is required prior to reconfiguration The AN220E04 AN221E04 and AN221E02 devices on the other hand allow complete or partial new configuration data to be loaded on the fly without the need to reset the device The Copyright 2004 Anadigm Inc All Rights Reserved 33 UM020800 U0010 AnadigmDesigner amp 2 User Manual hosted transfer of static configuration data sets is fine for applications where the required analog circuit behavior is known beforehand For applications in which analog behavior must be adjusted on the fly C Code generation features of AnadigmDesigner 2 offer convenient methods for a host processor to actually create and access the data that is required to configure and reconfigure the FPAA Dynamic Configuration The power of C Code generation is enabled by the AN220E04 s AN221E04 s and AN221E02 s ability to be dynamically reconfigured not available on the AN120E04 or AN121E04 Dynamic reconfigu
70. int and Help Single keystroke access is available for the most common editing functions such as Wire Mode Delete Mode Edit Mode and Get New CAM Download Configuration Data 6 UM020800 U0010 Copyright 2004 Anadigm Inc All Rights Reserved TM ana 2 2 An Overview of the Pull Down Menus All of the menu items associated with each of the pull down menus are addressed in detail in Section 3 Detailed Reference Guide The contents of the File menu should be familiar to most experienced Windows users The balance of the pull down menus are designed to contain an intuitive organization of all the features available within AnadigmDesigne Og EJ AnadiomDesigner Untitled File File Edit Simulate Configure Settings Dynamic Config Target View Toole Help New KA JI write configuration data to serial port Cris RE Eeg Write configuration data to serial port selected chips only Save Chel Write configuration data to File Save OS Write configuration data to a file selected chips only Check Sheet F4 Print Ctrl P Active Chip settings Print Preview Preferences Print Setup Register Algorithmic method i Gain of 2 ad State driven method 2 Gain of 2 ad Exit Display board Information Insert new COM Inserk new chip Toolbar uk CEPS Status Bar Copy Chrltc Paste CrrlHv Zoom In I Zoom But L ielebe Del Refresh F Enter Edit Shift mode Anadi
71. ion options Return Value The frequency of the master clock in Hz Copyright 2004 Anadigm Inc All Rights Reserved 56 UM020800 U0010 7 4 11 GetClockDivisor short GetClockDivisor Chip chip ClockDivisor nDivisor Description Gets the current value of a clock divisor for a chip Parameters chip The ID the C Code generated for the chip This will be something like chipName or an chipName depending on the name of the chip and the generation options nDivisor A clock divisor ID generated by the C Code The possible values are ClockDivisor PreScale ClockDivisor Clock0 ClockDivisor Clocki ClockDivisor Clock2 ClockDivisor Clock3 ClockDivisor Chopi ClockDivisor Chop2 Return Value The value of the clock divisor 7 4 12 SetClockDivisor void SetClockDivisor Chip chip ClockDivisor nDivisor short value Description Sets the value of a clock divisor for a chip Parameters chip The ID the C Code generated for the chip This will be something like chipName or an chipName depending on the name of the chip and the generation options nDivisor A clock divisor ID generated by the C Code The possible values are ClockDivisor PreScale ClockDiavisor Clocko ClockDivisor Clockl ClockDivisor Clock2 CloekDavisor Clocks ClockDivisor Chopi ClockDivisor Chop2 Return Value None Remarks This function appends bytes to the current reconfiguration data for the chip It is assumed that nDivisor is a valid clock diviso
72. ion that changes clock divisor values is sent there is a Update CLKS bit that must also be set for the clocks to actually be updated All of the clock setting functions SetClockDivisor IncrementClockDivisor DecrementClockDivisor ensure that this bit is set However after the reconfig uration is sent the bit must be turned off manually using this function If this function is not called the clocks will be reset and synchronized every time a reconfiguration is sent If the next reconfiguration data that will be sent also changes clock divisors then it is not necessary to call this function as the bit will just be turned back on by the clock setting functions Copyright 2004 Anadigm Inc All Rights Reserved 59 UM020800 U0010 AnadigmDesigner amp 2 User Manual 7 4 16 CAM Functions Example Application Each CAM contains C Code functions that are specific to changing its parameters The functions that get generated in the C Code are chosen using the C Code Functions Window and Global C Code Functions Window See the CAM documentation for more details on the C Code functionality each CAM contains Example Usage This example assumes we selected the setGain function of a GainInv CAM named MyGain Get a pointer to the primary configuration data int dataSize 0 const Byte pData GetPrimaryConfigData chipName amp dataSize Send the data to the chip Get the reconfiguration buffer ready to go InitializeReconfig
73. ions and types as they would be generated without the default prefix of an_ For more information on the prefix see Generation Options General Tab Primary Configuration Functions GetCircuitPrimaryData Gets the configuration data required to perform a primary configuration Reconfiguration Functions GetCircuitTransitionData Gets the configuration data required to perform a reconfiguration Copyright 2004 Anadigm Inc All Rights Reserved 62 UM020800 U0010 7 6 1 GetCircuitPrimaryData const Byte GetCircuitPrimaryData circuit nCircuit out int pCount Description Gets the configuration data required to perform a primary configuration The data begins with the synch byte and ends with the last error byte Parameters nCircuit The ID generated for the circuit This will be something like chipName 001 Primary or an chipName 001 Primary depending on the name of the chip and the generation options pCount pointer to a valid integer that will receive the number of bytes in the array returned by the function Return Value pointer to the configuration data that can be sent to the chip Example Get a pointer to the primary configuration data int dataSize 0 const Byte pData GetCircuitPrimaryData chipName 001 Primary amp dataSize Send the data to the chip 7 6 2 GetCircuitTransitionData const Byte GetCircuitTransitionData Circuit nCircuit out int pCount Description Gets the c
74. is selected then the output directory may be any directory accessible by the operating system This directory will remain the same until it is explicitly changed Generate The Generate button is pressed to create the files A notification will be displayed when the generation is complete Pressing the Generation Options button opens the C Code Generation Options Window and pressing the CAM Functions button opens the Global C Code Functions Window 7 4 C Code API Reference Algorithmic Dynamic Configuration This reference shows all C Code functions and types as they would be generated without the default prefix of an For more information on the prefix see Generation Options General Tab Primary Configuration Functions Get PrimaryConfigData Gets the configuration data required to perform a primary configuration GetResetData Gets the configuration data required to perform a soft reset Reconfiguration Functions InitializeReconfigData Prepares the data buffer that will hold the reconfiguration data ShutdownReconfigData Destroys the reconfiguration data buffer created by InitializeReconfigData ClearReconfigData Clears the reconfiguration data buffer without deallocating memory GetReconfigData Gets the current reconfiguration data GetReconfigControlFlags Gets the control byte of the reconfiguration data SetReconfigControlFlags Sets the control byte of the reconfiguration data Power Management Functions GetSleepDat
75. l organized an expansive collection of topics The content is extensively linked and thoroughly indexed About AnadigmDesigner2 What s This Context Help selecting this control converts the normal mouse arrow cursor into an arrow with a question mark Pointing and left clicking over any significant element in the design window will cause an informational pop up window to appear About AnadigmDesigner2 The About AnadigmDesigner2 menu item returns the current version of the software in a pop up window 3 10 Resource Panel AnadigmDesigner 2 recalculates the consumed device resources and re estimates power consumption every time a CAM is placed anytime parameters are changed in a CAM or IO or anytime the chip s settings are changed The resource panel associated with each chip in the design window presents this information graph ically To activate the resource panel left click over the small triangle centered along the right edge of the chip graphic see Figure18 AnadigmDesigner 2 considers all the chip IO and CAM settings and presents a power estimate in mW in the upper section of the resource panel This power calculation is updated anytime the design is changed F omer 4514135 mw ER Famer45 1135 mit in use counter in use 1 LEG CAB 1 LEG F me Dam ap en aap comp available comp available CAB 2 ZA OR opamp E SAR vailable SAR available ap AE TE cap PRET E camp available S comp available ite CABS o
76. l Rights Reserved 16 UM020800 U0010 ration data file which typically contains many data blocks of non zero data An uncompressed configu ration file will by contrast contain just a few large data blocks but most of the data will be O s EXECUTE Options Normally when an configuration data set finishes loading into an FPAAs Shadow SRAM the data will at once shift into the Configuration SRAM This happens when the Control Byte of the data blocks has its ENDEXECUTE bit set to 1 Setting this option to mmediate will set the ENDEXECUTE bit to 1 Setting this option to External Pin clears the ENDEXECUTE bit to 0 A configuration data set with this condition can be loaded into the FPAA but the transfer from Shadow SRAM to Configuration SRAM will only happen with the assertion of the device s EXECUTE pin Please refer to the Configuration Logic section of the device User Manual for further details Dummy Bytes The controls associated with these options add prefix and suffix all zero dummy bytes to the configu ration data files The configuration state machine needs extra clocks before and after the configuration data to cycle through its state machines Appending dummy bytes ahead and behind of the configu ration data file is a simple way to facilitate this Please refer to the Configuration Logic section of the device User Manual for further details Use CRC16 A configuration data block may conclude with either a hard coded Ox2A or a two byte CR
77. l in Section 6 Functional Simulator Begin Simulation The Begin Simulation command or its F5 shortcut key will begin a simulation sequence Upon conclusion of the simulation the Oscilloscope window pops up displaying all the simulation results available The ESC key will abort the simulation run so long as the AnadigmDesigner 2 is the active window 3 4 Configure Pull Down Menu The Configure pull down menu has a series of selections that Ee ctw all do the same basic thing They each move FPAA configu write configuration data to serial port selected chips only ration data out of the design system to either an RS 232 port AL de EE or a configuration data file Detailed descriptions of the serial SEE Su bk dat port data stream and configuration file formats are addressed later in this manual Section 7 Hosted Configuration Write configuration data to serial port Write configuration data to serial port selected chips only The Write configuration data to serial port command or its Ctrl w keystroke shortcut writes the config uration data for the FPAA devices being displayed to the PC s serial port Many of the Anadigm evalu ation products have the appropriate RS 232 circuitry on board for support of this function obviating the need for programming Serial Boot PROMs or writing microcontroller hosting programs The Write configuration data to serial port selected chips only command writes the configuration data
78. later versions will allow designs created for any of the Anadigmvortex ANx20E04 or ANx21E04 devices to be evaluated on the AN221D04 platform To check which version you are using from inside AnadigmDesigner amp 2 go to the menu bar and click on Help then click on About AnadigmDesigner2 To download the latest version of AnadigmDesigner 2 please go to www anadigm com AnadigmDesigner 2 software version 2 2 7 and later versions uses the AN221E04 device as the default device To change this use the menu item Edit gt Insert new chip or change the default chip type by choosing Settings gt Preferences If this version of the software is being used to develop designs targeted to the AN220D04 evaluation board be sure that the AN220E04 is the device selected within the design software Copyright 2004 Anadigm Inc All Rights Reserved UM020800 U0010 Table of Contents 1 Quick Start 1 1 1 Wal GOSS This SO VEG e e KEE 1 1 2 Quick Test Drive Simple Example Circuit cccccccccccscccsscceseceeeeceeecaeeceueecseeseeecsueeaseseueesseessagesagees 1 2 AnadigmDesigner amp 2 User Interface 6 2 1 The Short Cut Buttons and Associated Keystroke Shortcuts rrrrarrrnrrrnnnrnnnrrnnrrnnnvnnnnnnnevnnernnennnnennnenner 6 2 2 An Overview of the Pull Down Menus 7 3 Detailed Reference Guide 8 21 Fie I UNE Re nn EE 8 3 2 REGIE UMS e ln EE 10 3 3 Simul te Pull Down MENU EE 14 3 4 Configure Pull Down Menu c i0 2 25 lt esessecea
79. nd MyCall Dat The linker would not be able to resolve this ambi guity and the code would not compile If the C Code is generated with name truncation enabled the truncation is applied intelligently and no name collisions or linkage ambiguities will occur In the previous example the function names that would be generated are MyCall D_1 and MyCall D 20 Copyright 2004 Anadigm Inc All Rights Reserved 45 UM020800 U0010 AnadigmDesigner amp 2 User Manual 7 3 5 C Code Generation Options Reconfiguration Tab This tab is used to set reconfiguration options specific to each chip C Code Generation Options General Reconfiguration Primary Configuration Clocks Show settings for ExampleLhip Initial reconfiguration data buffer size Minimum 8 bytes Bd bytes Enable automatic growth of the reconfiguration data buffer Grow by 64 bytes ms All Cancel Help Using the Window Every chip in the circuit that is reconfigurable will be listed in the Show Settings for drop down box The settings in the lower half of the window apply to the chip selected in this box The Apply To AI button may be pressed to apply the settings for the currently selected chip to all reconfigurable chips in the circuit Data Buffer Size When using the C Code API to build reconfiguration data a separate memory block of reconfiguration data is maintained for each chip Each chip has its own settings f
80. nd whether any of your CAMs are running interpreted simulation code All node data can be saved for post simulation exploration 6 6 Oscilloscope Window Viewing Simulation Results All the simulation results are now available for graphical analysis Each of the waveforms is color keyed to each of the scope probes dropped in the circuit The display of each waveform can be toggled on and off by pressing its associated Channel button The signal amplitude display scale can be adjusting using the asso ciated Volts Per Division control A Position control is also available that allows you to separate the wave forms vertically for easier viewing F Oscilloscope simulator example ad Start D 000p5 Display Data Volts Per Division Figure 21 Oscilloscope Display Zoomed In to Show Simulation Details Copyright O 2004 Anadigm Inc All Rights Reserved 31 UM020800 U0010 AnadigmDesigner amp 2 User Manual single vertical cursor is available to drag left and right within the waveform window There are four Voltage displays one for each waveform and a single Time indicator As the cursor is moved horizontally the Voltage and Time indicators all update to reflect that moment s simulation results Moving the waveforms up and down using the Position control does not affect the Voltage readings The Time Per Division control allows the data in the waveform window to be scaled horizontally Below the waveform wi
81. ndow there is a horizontal slider that allows you to pan through time if the horizontal scale is such that less than all of the waveform is presented The Start and End times of the displayed waveforms are also presented The additional controls toggle the cursor display and waveform grid display on and off or Close the window This simulation uses arbitrary waveform signal generator A swept sine data file was constructed and applied to the generator Channel 1 Referring to both Figures 20 and 21 Channel 3 shows the output of the band stop filter doing its job nicely centered about 14 kHz The amplitude of the output of the Low Pass filter assigned to Channel 2 can be seen to decrease in even the extremely narrow band displayed in Figure 21 Channel 4 shows the output of the comparator The comparator s positive input is driven by the output of the Band Stop filter Channel 3 and its negative input driven by an internally generated reference voltage The comparator output pulses narrow as its input waveform amplitude decreases Eventually the amplitude is so attenuated by the Band Stop filter that the comparator can find no valid trip point In Figure 22 you can see that the user defined input waveform definition ended at about 4 8 mS but the simu lation was run for a bit longer This instructive screen shot demonstrates the vertical cursor Positioned well after the input waveform data ends you can see the current cursor time is 5 183 mS an
82. nerator Control m Output Ge Differential C Single ended Signal Data Peak Amplitude Differential Offset 1 Volts D Volts Frequency Phase 20k Hz 0 Degrees Common Mode Offset r Duty Cycle 2 Volts 50 Percent e Help X The square wave signal generator has all the same parameters as just discussed above with the addition of Duty Cycle The duty cycle may be adjusted to provide a waveform to meet whatever unique signal require ments you might have 6 3 4 Signal Data File Generator Signal Generator Control ki E3 A oe 2 Output Differential C Single ended m Signal Data Filename Common Mode Offset Differential Offset A Volts 0 Volts The csv and txt File Format The data file waveform generator allows you to insert a waveform of your own design With this feature there is not a waveform in the world you could dream up that can t be handled by the simulator The file browser dialog allows you to specify a file of type wav csv or txt Each record of the ASCII csv or txt file contains a time and amplitude data pair The simulator connects the dots to assemble a piecewise linear wave form The first field of each record is a time value in seconds The second field is an amplitude value in volts A space or tab character may separate the two fields of each record in a txt file A comma is the separatin
83. nnrnnnennnrnnnnnnnnnnnnnnnnnnnnennnennn 70 Figure 38 Fine Tuning Slider Controls Convenient for Tuning Live Systems rrrrrrnnnrnnnnnnannranennnennnnnnnnr 72 Copyright O 2004 Anadigm Inc All Rights Reserved iv UM020800 U0010 ra El 1 Quick Start 1 1 What does this software do AnadigmDesigner 2 software allows you to quickly and easily construct complex analog circuits by selecting placing and wiring together building block sub circuits referred to as CAMs Configurable Analog Modules The analog circuits that you build can be downloaded to Anadigm s Field Programmable Analog Array FPAA The FPAA will then function as the circuit you constructed The results of your analog design can be viewed immediately using a signal generator and an oscilloscope Since Anadigm s FPAA technology is SRAM based the chip can be reprogrammed as many times as desired so you can try out as many circuits as you like Also note that multiple independent circuits can be constructed and run simultaneously within a single device For example two completely independent filter networks each with its own inputs and outputs can be constructed the parameters and operation of one completely independent of the other AnadigmDesigner 2 also accommodates large designs which may span across multiple devices AnadigmDesigner 2 also generates intelligent configuration data for you as ready made C Code which can run on a companion microproce
84. o launch the simulation As the simulation completes the Oscillo scope window pops up presenting your simulation results for review Oscilloscope simulator_example ad Display Data Volts Per Division Position voltage 23 CAI mw DIEU Time Per Division 200 ps E Time 1 607 m Start 0 000 pus 7 2 000 ms Grid Cursor Save Figure 20 Oscilloscope Display High Pass Swept Input Band Stop amp Comparator signals 6 2 Simulator Performance A CAM s simulation equations are contained as text strings within each CAM s cam library file For CAM s included with a particular software release the simulation equations also reside in a compiled form within the executable files of the system The compiled equations are used whenever available and greatly increase the speed of the simulator If a compiled simulation model is not available e g a user defined CAM or a CAM created after a software release then the simulator will evaluate the simulation equations within the cam file using a run time interpreter simulation speed will be noticeably slower Copyright O 2004 Anadigm Inc All Rights Reserved 28 UM020800 U0010 The current simulation algorithms are not designed to handle zero delay loops in your circuit design Zero delay loops are loops containing CAMs that have zero delay characteristics i e the output immediately reflects the input with no intervening clock step The AnadigmDesigner
85. ocked PROM 18 Figure 15 A Typical Connection for Multiple Devices from a Single PROM cccseeeeeeeeeeeeeeeeeeeeeeeeenes 18 Figure 16 Chip CAM Wires Serial Port and Display Preferences rrrrrnaneranennrnnnrnnennnrnnnnnunnnennanennnnnene 21 Figure 17 Left Clicking on the Arbitrary Waveform CAM Highlights its Associated Resources 23 Designing for Low Power Operation Figure 18 Left Click on the Triangle to bring up the Power Estimate Resource Panel ssceseeeeee 24 Configuration File Formats Figure 19 Binary File COMICS acess ced enies saco a aaoi EEEE ESE ERA Da Eia 27 Functional Simulator Figure 20 Oscilloscope Display High Pass Swept Input Band Stop amp Comparator signals 28 Figure 21 Oscilloscope Display Zoomed In to Show Simulation Details rrrarrrrnrrnnrrranrnanrrnnnrnnnnvnnennnnnnn 31 Figure 22 End of Simulation Detailing Circuit Behavior as Stimulus gooestofC ceeceeeee enna 32 Hosted Configuration Figure 23 A Typical Host Connection to an AN120E04 or an AN220E04 eernnrevnnrrvvnrrnnnrrnnnnrennrennnnrennnrennn 33 Figure 24 Example Circuit for C Code Generation cccccccceccceseceeceneeceeeceueceueesaeeseueeeuceseeeaueeseeessaeenaaes 35 Figure 25 Disabling C Code Generation for Particular Functions of a CAM Instance GainInv_Right 36 Figure 26 Disabling C Code Generati
86. ocks Chip Power Settings High Bandwidth Low Power Enable Pull ups CIDIN CFGFLGb amp ACTIVATE NOTES Kc Applies to configuration files only Serial download to development board remains Unchanged id CAM parameters should be venfied for all marked CAMs B whenever any chip settings are changed Cancel Help Power Settings AnadigmDesigner 2 User Manual Additional chip level parameters include controls for power consumption pull up enables and support for PROM based configuration As with the parameters in the Clock tab parameters set in the Chip tab of the dialog box only apply to the chip instance that currently has focus in the design window the active chip AnadigmDesigner 2 can configure the FPAA to operate in either a High Bandwidth mode or a Low Power mode In the Low Power mode all of the CAB circuits are biased for low power operation For a more detailed look at the low power features please refer to Section 4 Designing for Low Power Oper ation Enable Pull ups The on chip pull ups associated with the device s DIN CFGFLGb and ACTIVATE pins are program mable Selecting the associated check box modifies the data set written to configuration data files to enable these pull up devices These settings have no affect on serial port download data this ensures compatibility with Anadigm evaluation platform products Copyright 2004 Anadigm Inc All Rights
87. of the design window the right click also brings up access to a control allowing adjusting of chip level parameters The standard colors available to select from are Red Green and Blue If an alternate color is preferred selecting Other will bring up another dialog window which will allow selection of any possible displayable color In more complex designs color coding the wires can be an effective and convenient way to keep track of what is going on where in oe the schematic Neither the wire s color nor the wire s label text influences its actual EE connectivity in any way Yellow Green Blue Copyright O 2004 Anadigm Inc All Rights Reserved 12 UM020800 U0010 L In addition to being able to change the color of the wire it is also possible to change Straight Line the method used to display the wire graphic The Straight Line option converts the FEDE route to a simple straight line between its two endpoints Horizontal Start begins the p el start route horizontally and ends vertically at the terminus Vertical Start does just the opposite Enter Edit Shift mode The Edit Shift mode is the default mode of a design session In this mode a left click and drag over a placed CAM will stick the CAM to the mouse cursor and allow it to be dragged to another location within the design window The keystroke shortcut for entering this mode is e A handy extension to the Edit Shift mode all
88. on by CAM Type ADdata ANx21_INMUX rrrrnrrnnnrnnnnrrnnnnnnnnennnnen 37 Figure 27 Disabling C Code Generation by CAM Instance Name Filter Left rrrrarnnnnrrnnrrnnnrnnnrnnnennrr 38 Figure 28 Disabling C Code Generation of a Particular Function of a Particular Instance 1 1 1 1 1 1 1 1 39 Figure 29 Composite Status of C Code Generation for all CAM Instances rrrrnnrnnnnennarennnrevnnrennnrrvnnrnnnn 39 Figure 30 C Code Functions Window for Instance Filter Let 41 Figure 31 Hierarchical View of all CAM Instances 0 0 ccc ccccseccseeeceeeceeeeeeeseeeeeeeseueceeeseueeseeeseeeseeeeeneesaees 42 Figure 32 Generating Code for Multiple Devices rrrrrrnrnnnrnnanenanrrnnrnnnrnnanrnnnennernnarnnnnnnanennarnnannnnsnnnssennnnnnee 44 Anadigm Filter Figure 33 The AnadigmFilter Main Window cccccccccccsecceeceaeeeseeeeeeeaeeeseeeseeeeaeeesueeseeeseeeseeeaeeeseeeeeeeeaaes 65 Figure 34 Automatic Construction of High Order Filters rrrrrnrnnnnnnnnnnnnnnnnnnnrnnnnnnnnnennnnernnrennnrennarennsnennnnnn 66 Figure 35 Sample Print Sheets from AnadigmFilter rrrrrrnnrnnnrrnnnenarenanrnnnrnranennnrnnnrnnanrnnnnnnnnnsnnnannnnsennsennn 67 Figure 36 Menu Sub Items Under the Preferences Menu Heading 68 Copyright O 2004 Anadigm Inc All Rights Reserved iii UM020800 U0010 AnadigmPID Figure 37 AnadigmPID Main Window Block Diagram View rrrnrrnnnennnrnnnnnnarnn
89. on the fly Each CAM has associated C Code functions that are designed to manipulate its programmable parameters Using AnadigmDesigner 2 Algorithmic Dynamic Configuration features C Code files containing these func tions can be generated The C Code that is generated contains important information about the low level components of the circuit The C Code functions use this information to dynamically generate reconfiguration data for the chip as they are called As each function is called the data it produces to reconfigure the chip is appended to a data buffer The functions do not directly reconfigure the chip but rather build the data that is required to reconfigure the chip When it is time to send the data to the chip C Code API functions such as GetReconfigData are called to retrieve the reconfiguration data buffer It is then the responsibility of the host processor to transfer this data into the FPAA The following subsections walks through a prototypical design illustrating the use C Code generation for Algo rithmic Dynamic Configuration 7 2 1 Design the Circuit The example is a simple audio filter The circuit puts the low frequencies on the left channel and the high frequencies on the right channel The design is not as compact or efficient as it could be but uses a variety of CAMs suitable for this tutorial AnadipmDesigner C_Code_Generation ad File Edit Simulate Configure Settings Dynamic Config Target View Tools Help
90. onfiguration data required to transition from one circuit state to another The data begins with the synch byte and ends with the control byte Parameters nCircuit The ID generated for the circuit This will be something like chipName 001 or an chipName 001 depending on the name of the chip and the generation options pCount pointer to a valid integer that will receive the number of bytes in the array returned by the function Return Value pointer to the reconfiguration data that can be sent to the chip Example Get a pointer to the primary configuration data int dataSize 0 const Byte pPrimaryData GetCircuitPrimaryData chipNameA_001_ Primary amp dataSize Send the data to the chip Get a pointer to reconfiguration to change to another circuit const Byte pTransData GetCircuitTransitionData chipNameB_ 001 amp dataSize Send the data to the chip Copyright 2004 Anadigm Inc All Rights Reserved 63 UM020800 U0010 AnadigmDesigner amp 2 User Manual 7 7 Static Configuration all devices Static configuration by a host processor involves the transfer of a complete Primary Configuration data set after an FPAA reset sequence Host driven Static Configuration is suitable for systems in which the FPAA is configured only at power up or after a system reset AnadigmDesigner 2 supports various Static Configuration schemes by the generation of three unique forms of data Two of the forms were disc
91. only for the currently selected FPAA instance s to the PC s serial port Multiple FPAA instances can be selected by holding down the ctrl key while left clicking the boundaries of the desired devices Write configuration data to a file Write configuration data to a file selected chips only These commands write the configuration data for the current or selected FPAA instances to a data file By default the file will be written into the same directory that the active circuit file ad2 file resides in and will inherent the same root file name The configuration data file may be used to program a Serial PROM or used as a data file for microcontroller hosted FPAA designs Some of the older versions of EPROM programmer software packages are unable to handle file names greater than eight characters so you might wish to choose your circuit name with this in mind There are several different file formats available for storing configuration data The available formats are presented in the Save as type selection control within the Write Configuration Dialog pop up AHF file ahf AHF or ASCII Hex File format is a common basic data interchange format Configuration data bytes are represented as hexidecimal ASCII character pairs S1 File ms1 Like AHF the ms1 file contains the ASCII hexidecimal representation of the FPAA s configuration data The data is presented in an industry standard S Record format file S2 File ms2
92. operator it is possible to test for specific flags in the control byte Example Get the bits in the control byte ControlByte controlByte GetReconfigControlFlags chipName Do something if the Reset bit is set LE ControlByte amp ControlByte SReset Jk Copyright O 2004 Anadigm Inc All Rights Reserved 54 UM020800 U0010 TM ana 7 4 8 SetReconfigControlFlags void SetReconfigControlFlags Chip chip ControlByte nFlags Description Sets bits in the control byte of the reconfiguration data for the chip Parameters chip The ID the C Code generated for the chip This will be something like chipName or an chipName depending on the name of the chip and the generation options nFlags A combination of one or more ControlByte flags generated by the C Code The possible flags are ControlByte Pullups ControlByte EndExecute ControlByte SReset ControlByte Read ControlByte InhibitRdbck ControlByte ResetAll Return Value None Remarks Using the ANSI C bitwise OR operator it is possible to set multiple flags at once For instance Example SetReconfigControlFlags chipName ControlByte Pullups ControlByte EndExecute If it is also possible to turn flags on and off using a combination of bitwise operators and the GetRe configControlFlags function This example turns off the EndExecute bit turns on the InhibitRdbck bit and keeps the other bits as they were SetReconfigControlFlags chipName
93. opyright 2004 Anadigm Inc All Rights Reserved 27 UM020800 U0010 AnadigmDesigner amp 2 User Manual 6 Functional Simulator AnadigmDesigner 2 includes a time domain functional simulator which provides a convenient way to assess your circuit s behavior without the need for a lab set up A lab rig provides for more precise circuit evaluation under all conditions but you may not always have a test bench at your disposal For the casual investigator then this functional simulator is a convenient alternative 6 1 Simulator Overview The simulator s user interface is intuitive and easily learned Most of the steps are the same that you would take while bench testing any circuit AH 104 LOAD ORDER 1 ee Wire up your circuit ee Attach and set up your signal generator s ee Attach Oscilloscope probes ee Set up the simulation parameters ee Launch the simulator A screen shot of a partially designed circuit ready for simulation is shown here A single generator drives both High Pass and Band Stop filters The output of the Band Stop filter is routed to a two input comparator The second input to the comparator is driven by a user defined voltage The input waveform an arbitrary type swept sine of 1V peak amplitude is applied to an Input Cell programmed for single ended operation Four probes were placed to monitor the generator s output the outputs of each of the filters and the output of the comparator F5 is the keyboard shortcut t
94. or down TS loaded to an Anadigm FPAA Copyright 2004 Anadigm Inc All Rights Reserved 1 UM020800 U0010 AnadigmDesigner amp 2 User Manual Serial Port Download Assuming you have an evaluation board connected to your PC s serial port and further assuming that a signal generator and oscilloscope are attached to the proper terminals we are now ready to download the configuration data to the chip The gain setting for the GainInv CAM is 2 and the output signal will be inverted Downloading to the FPAA on an evaluation AnadigmDesigner 2 ti board is accomplished by selecting the menu item Configure gt Write configuration data to serial port The download takes approximately 2 seconds If any communications problems are encountered during the download process AnadigmDesigner 2 will create a pop up info window describing the problem x Error This port COM3 does not appear to be connected to a development board Using a signal generator apply a signal to pin 9 of the device The voltage of the input signal should be centered about Voltage Main Reference VMR The gained amp inverted signal shown to the right as Vout can be probed on pin 3 with the complimentary signal on pin 4 Voltage IV The gain of the GainInv CAM for this circuit is set to two A double left click over the GainInv CAM will pop up the Set CAM Parameters dialog box Adjust the gain to some new value then again download the data
95. or the size of this block and what action the C Code should take if that size is not enough The Initial reconfiguration data buffer size is the number of bytes that will be initially allocated for the chip to store its reconfiguration data Automatic Buffer Growth If it is uncertain that the initial buffer size will be enough to hold the entire reconfiguration data then the buffer can be set to automatically grow when necessary If the Enable automatic growth of the reconfig uration data buffer check box is checked then the Grow by text box will be enabled This text box holds the number of bytes to grow the memory block by if growth is necessary If this is set to 32 and an API call requires one more byte in the buffer than is available then 32 more bytes will be allocated leaving 31 bytes for future data If this is set to 4 and an API call requires 9 more bytes then the minimum number of bytes that is a multiple of the grow by number will be allocated In this case 12 more bytes would be allocated The downside to enabling this feature is the time overhead that may be required by the microprocessor to dynamically allocate memory Copyright 2004 Anadigm Inc All Rights Reserved 46 UM020800 U0010 7 3 6 C Code Generation Options Primary Configuration Tab This tab is used to select which chips will have primary configuration data output in the C Code Output Primary Configuration Data For Ix ExampleChip Ix TestChip
96. ormance values can be found in on line documentation available for each CAM Copyright O 2004 Anadigm Inc All Rights Reserved 11 UM020800 U0010 AnadigmDesigner amp 2 User Manual Moving a CAM is accomplished in the same fashion as moving a wire or a wire label As the edit mode cursor is moved to within close proximity of a placed CAM it will switch from an arrow to an arrow with a small 4 way arrow icon adjacent Figure 10 is a screen shot of a typical CAM move in process I ID2 255 AHZ2 1 E04 LOAD ORDER 1 h Wie Label 2 chip I Figure 10 CAM Dragging Insert new chip The Insert new chip selection places a second chip instance within the design window If during the course of design adding another CAM would exceed the capacity of the array AnadigmDesigner 2 will not allow its placement In this instance it becomes necessary to add a second device to the design using this command Edit Selected Wire s Selecting a wire by right clicking over it will result in its being highlighted and the adjacent selection box will pop up There are several commands available to fine tune the way the wire is presented in the design window The color and routing method are Connect Wire Reroute Wire z EE both adjustable There is a selection item for hiding or unhiding the wire label There Se are also controls for deleting the wire and adding a new connection to the wire x Se ae Finally as with most other areas
97. ows you to clone an instantiated CAM While in Edit Shift mode doing a right click and drag over a CAM will result in a ghosted clone of that CAM being attached to your cursor Releasing the right mouse button drops the clone into place and pops up a menu selection asking whether the CAM is to be moved or copied No connection information is carried over to the new location for a copied CAM but all of the original CAM s parameters are retained it is cloned Enter Wire mode The Enter Wire mode command or its w keystroke shortcut moves the tool into wiring mode When in wiring mode the mouse cursor will either be a drawing pen or a drawing pen with an adjacent forbidden symbol Please refer to Figure 4 for examples of each The drawing pen indicates that a valid connection point is sufficiently close to snap to allowing the start or termination of a wire with a single left click A forbidden symbol indicates that any start or termination actions will not be allowed When in the Edit Shift mode the cursor automatically changes to a drawing pen when moved close to an allowable connection point Conversely when in Wire Mode a right click brings up a pop up menu allowing a quick change into Edit Shift or Delete modes By default all new wires placed into the design have a descriptive test wire label associated with them This is a graphic only label it has no bearing on the connectivity of the wires drawn i e Having two or more wir
98. ox to turn off C Code generation for all of its functions CAM C Code Functions Group By CAM Type CAM Type 8 i O ADdata ANx21 INMUX Kegel Ix ANx21 Standard FilterBiquad FE elp Ix ANx21 Standard GainHold C ANx21 Standard GainInv Display Options Only show programmable items Figure 26 Disabling C Code Generation by CAM Type ADdata ANx21_INMUX Next turn off the functions for the low pass filter The window shown in Figure 20 cannot be used to do this If the box associated with CAM Type ANx21 Standard FilterBiquad were unchecked it would turn off the C Code functions for all CAMs of that type meaning it would also turn off the functions of the high pass filter To achieve the desired goal of turning off C Code generation for a particular instance click on the Group By selection box and choose Instance Name from the list The selection pane on the right will show a list of all the CAM instances in the circuit Notice that the Gainlnv_Right and InputCell4 the multiplexed input Copyright 2004 Anadigm Inc All Rights Reserved 37 UM020800 U0010 AnadigmDesigner amp 2 User Manual already have all of their C Code turned off To turn off the functions for the low pass filter on the left channel click on uncheck the box next to Filter_Left CAM C Code Functions Group By Instance Name Instance Name Filter Left Cancel mah EE D Fil
99. pamp A SAR available Figure 17 Left Clicking on the Arbitrary Waveform CAM Highlights its Associated Resources The resource panel also displays the FPAA s physical resource availability As CAMs are added to the design AnadigmDesigner 2 automatically places them into a CAB and updates the resource panel Left clicking over a placed CAM in the chip graphic will high light that CAM and the resources assigned to it Conversely left clicking over an assigned resource in the resource panel will cause the resource to high light along with its associated CAM In right half of Figure 17 the Arbitrary Waveform generator has been selected with a left click This complex CAM consumed the LUT and counter resources as well as one op amp in CAB 2 along with 3 of 8 of that CAB s capacitor banks Copyright O 2004 Anadigm Inc All Rights Reserved 23 UM020800 U0010 AnadigmDesigner amp 2 User Manual 4 Designing for Low Power Operation Low power is often a requirement in system designs AnadigmDe signer 2 has several features specifically targeted at conserving power in such applications chip 1 Settings Clocks Chip L Power Settings High Bandwidth 4 1 High Bandwidth vs Low Power Low Power The menu item Settings gt Active Chip settings opens up the Enable Pulkups Chip Settings dialog box From this dialog the device can be LIDIN 2 CFGFLGb amp ACTIVATE configured to operate in either a High Bandwidt
100. r PROM Crystal Fast Configure for PROM Crystal Slow These two configuration options are best discussed together The first selection results in the device s DCLK signal being routed to its DOUTCLK as soon as the configuration completes The second selection results in this same DCLK to DOUTCLK behavior and the internal analog clock is derived form the ACLK pin as described just above for Configure for Microprocessor OE RESETb S es EER DIN ACTIVATE ERRb PORb CFGFLGb CS2b EXECUTE WZ CS1b Configured ACLK lt 16 MHz DCLK Figure 15 A Typical Connection for Multiple Devices from a Single PROM In the example above the first device in the configuration chain should have a configuration file configured for PROM Crystal Fast DCLK will be routed to DOUTCLK as soon as the configuration completes The second and all subsequent device s in the configuration chain should have a config uration file configured for PROM Crystal Slow DCLK will be routed to DOUTCLK and the internal analog clock will be derived from ACLK pin Copyright 2004 Anadigm Inc All Rights Reserved 18 UM020800 U0010 ra El 3 5 Settings Pull Down Menu EET The Settings pull down menu is something of a catch all area for various global prererenees settings applicable to device and the AnadigmDesigner 2 software 3 5 1 Active Chip Settings This multi tabbed window provides access to parameter settings for the currently a
101. r value The change takes place immediately internally meaning subsequent calls to GetClockDivisor for this chip and divisor will return the value set here If nDivisor is equal to the current value of the clock divisor then this function has no effect and no new bytes are appended to the reconfiguration data Copyright 2004 Anadigm Inc All Rights Reserved 57 UM020800 U0010 AnadigmDesigner amp 2 User Manual 7 4 13 IncrementClockDivisor void IncrementClockDivisor Chip chip ClockDivisor nDivisor Description Increments the current value of a clock divisor to the next valid divisor value Parameters chip The ID the C Code generated for the chip This will be something like chipName or an_chipName depending on the name of the chip and the generation options nDivisor A clock divisor ID generated by the C Code The possible values are ClockDivisor PreScale ClockDivisor Clock0 ClockDivisor Clocki ClockDivisor Clock2 ClockDivisor Clock3 ClockDivisor Chop1l ClockDivisor Chop2 Return Value None Remarks This function appends bytes to the current reconfiguration data for the chip It is assumed that nDivisor is a valid clock divisor value The change takes place immediately internally meaning subsequent calls to Get ClockDivisor for this chip and divisor will return the value set here If the divisor is already at its maximum value this function has no effect and no new bytes will be appended to the reconfigu ration da
102. ration 33 NT VENN 33 7 1 1 Understanding the Difference Between Static and Dynamic Configuration sss 33 7 2 Algorithmic Dynamic Configuration ccccccceccceececeeeeeeeeeeeeee cess eeseeeeeeeeseeeseeeseeesseeeseeesaeeseuesseeeeeeseeees 35 FAD ES NM 35 7 2 2 Choosing Functions to Generate 36 Copyright 2004 Anadigm Inc All Rights Reserved i UM020800 U0010 Table of Contents 7 2 3 Choose the CAM C Code Functions rranrrnnrrnnrnnnnnnanrnnnrnnnnnnanennnrnnnrnnarnnanrnnnrnnasnnanennnennasnnnnnnnnennnne 36 724 Generating the C OCS EE 40 7 3 Controls Reference Algorithmic Dynamic Configuration rarannnrnnannnarevnnnnnnnnnannnanevnnrnnnnnnnnnnnnennsennn 41 7 3 1 CAM C Code Functions WINKOW ccccccccceccceeeceeeceueecececeueceeecsueeeueesauesaeecsueesaeeseeeseeesseeeseeesaaes 41 7 3 2 Global C Code Functions Window cece eeeseeeseeeseeeseeeeseeeseeeseeesaueeseeeseeeseeesaeeeaaes 42 7 3 3 C Code Function Display Options de iteueeungi eeben Aeegiedeagekiteden deene hennsdadtnvencdnadbactedesacas 45 7 3 4 C Code Generation Options General Tab 45 7 3 5 C Code Generation Options Reconfiguration Tab 46 7 3 6 C Code Generation Options Primary Configuration Tab 47 7 3 7 C Code Generation Options Clocks Tab 48 7 3 8 Generate C Code Window 9 aab EENEN EN EEDA aE 48 7 4 C Code API Reference Algorithmic Dynamic Configuration rrrarnnnnennnrnnnrrnnrnnnrnnnnnnnnrnnnnrnnennennnnnnn 49
103. ro processor within an embedded system Copyright 2004 Anadigm Inc All Rights Reserved UM020800 U0010 Legal Notice Anadigm reserves the right to make any changes without further notice to any products herein Anadigm makes no warranty representation or guarantee regarding the suitability of its products for any particular purpose nor does Anadigm assume any liability arising out of the application or use of any product or circuit and specifically disclaims any and all liability including with out limitation consequential or incidental damages Typical parameters can and do vary in different applications All operating parameters including Typicals must be validated for each customer application by customer s technical experts Anadigm does not in this manual convey any license under its patent rights nor the rights of others Anadigm software and associated products cannot be used except strictly in accordance with an Anadigm software license The terms of the appropriate Anadigm software license shall prevail over the above terms to the extent of any inconsistency Copyright 2004 Anadigm Inc All Rights Reserved Anadigm and AnadigmDesigner are registered trademarks of Anadigm Inc AnadigmFilter AnadigmPID and the Anadigm logo are trademarks of Anadigm Inc Copyright 2004 Anadigm Inc All Rights Reserved UM020800 U0010 Version Compatibility Notice The AnadigmDesigner amp 2 software version 2 2 7 and
104. rol which allows you to select which of the 4 internal clocks will drive the CAM There is also the Documentation button which pops up a quick help window which fully describes the features of the selected CAM Once you hit the OK button the dialog box will dismiss itself Copyright O 2004 Anadigm Inc All Rights Reserved 3 UM020800 U0010 AnadigmDesigner amp 2 User Manual Set CAM Parameters AN 20 Standard Gamlnv 1 1 1 Inverting Gain Stage Anadigm Approved CAM Instance name and Clock frequency Notes Instance Name Gaint i CLOCKA kHz Fr K Help CAM Options Documentation CAM Parameters Parameter Limita Realized Gain 2 00110100 2 00 Figure 3 Set CAM Parameters Copyright 2004 Anadigm Inc All Rights Reserved 4 UM020800 U0010 Wire the Circuit Enter the wire mode using the w keystroke shortcut The Mouse cursor should now look like a drawing pen Using a left click drag release mouse action wire the CAM similarly to what is shown above in section 1 2 Quick Test Drive Simple Example Circuit Circuit connections in the FPAA array are accomplished by setting switches within the chip Some nodes cannot be directly connected in the design window because no switch exists within the array that could directly connect them Other connections are just plain illegal For example AnadigmDesigner 2 will not allow you to short two outputs together In either case the drawing pen
105. rrently linked to Anadigmbesigner2 circuit communicate its design data to Normally only a single FPAA instance is open for edit Temp de is a however it is possible to have multiple Select chip in which ta place PID controller FPAAs open in AnadigmDesigner 2 and the Chip Mame ET Anahi Circuit Options selection window is used to e Pre establish contact with the desired one Temp Controller Abe 1EO4 Delete Chip a Once this dialog is dismissed the main window of AnadigmPID is presented Select Target circuit Update x es w Copyright O 2004 Anadigm Inc All Rights Reserved 69 UM020800 U0010 AnadigmDesigner amp 2 User Manual i AnadigmPID Temp Controller apd Feld File View Circuit Help fr El B Design Notes FS BlockDiagram Gi TransterFx l r I i 1 I gt AN22E04 PID Conskants Min Requested Realized Max P ae TET I 0 000134 227 537 Hus fr dei 0 109 0 109 0 426 ms Signal Path Clock BED aes KHz Fine Tuning 77 System fs Filter Properties aly For Help press Fi fe Figure 37 AnadigmPID Main Window Block Diagram View The upper half of the AnadigmPID window is a tabbed window with tabs for Design Notes Block Diagram and TransferFx Transfer Function This brief introduction to the tool will address only the Block Diagram tab The lower half of the AnadigmPID window is also a tabbed window The
106. signer amp 2 User Manual 3 7 Target Pull Down Menu The Target pull down menu provides access to functions associated with a target FPAA evaluation board The assumption here is that the target board contains a microcontroller running a compatible version of the Anadigm Boot Kernel ABK Usually this would be an Anadigm supplied evaluation board but may also be a user designed target running the ABK Display board Information This command returns a text message which contains information about the version of the ABK firmware that is currently running 3 8 View Pull Down Menu Toolbar SS The Toolbar check box controls whether or not the toolbar containing the program s shortcut buttons is displayed As with most other programs the tool bar can be anchored sd to any of the other three sides of the design window or floated undocked anywhere else SS i on the screen A left click and drag over the short grey bar at the left most edge of the SES toolbar is all that is required to undock it from its default position at the top of the screen Status Bar This check box controls whether or not the status bar appears at the bottom of the design window It is highly recommended that you leave this feature enabled as the status bar provides useful user feedback information Zoom In and Zoom Out These controls and their i and o keystroke shortcuts control the zoom setting of the design window This is most useful w
107. ssor This enables on the fly reconfiguration of the AN220E04 AN221E04 or AN221E02 devices by a host processor A functional simulator is included in to facilitate circuit design and experimentation without the need for any lab equipment The simulator features an intuitive user interface and displays time domain results graphically 1 2 Quick Test Drive Simple Example Circuit Load in a Simple Example Circuit Within AnadigmDesigner 2 use the left mouse button and click on the File menu Fi nadiemDesienerZ Gain of 2 ad LER File Edit Simulate Configure Settings Dynamic Config Target View Tools Help 0 S akk 4 NAM Ei ZK item This brings up the File menu pull down Click on the Open menu item This een rat negt brings up a file selection dialog box Browse to the Circuits folder in the AnadigmDesigner 2 installation folder then down to the ANx20 Examples folder Locate the Gain of 2 ad2 entry place the cursor over it and double click the left mouse button The gain stage example circuit will be loaded into AnadigmDesigner 2 and displayed in the design window as shown here The on screen image has a black background This example circuit consists of just a single ended input feeding an inverting gain stage The output is a differential signal prefaced by a reconstruction filter Once a design has been completed it may be saved for future edits simulated using the built in functional simulator
108. state if some of the functions are on and others are off This is signaled by a greyed out X Instance Name x Filter Left X Filter Right x Gar Right x Gain Left i InputCell4 Copyright 2004 Anadigm Inc All Rights Reserved 43 UM020800 U0010 AnadigmDesigner amp 2 User Manual If a single CAM instance is selected in the CAM Explorer such as Gaininv Left the Selection Panel is then identical to the CAM C Code Functions Window Grouping by Chip Name CAMs are grouped according to the chip they are in Selecting the Chip Name root in the CAM Explorer presents a list of chips with check boxes in the Selection Panel If a box is checked all functions for CAMs in that chip will be on If a box is not checked all functions for CAMs in that chip will be off It is also possible for a check box to be in an intermediate state This is the case if some of the functions in the CAMs in the chip are on while others are off Chip Mame Kl ExampleChip When a chip name is selected in the CAM Explorer then the Selection Pane will present a check box that is used to turn CAM functions for this chip on and off ExampleChip x Generate CAM C Code Below the chip name in the CAM Explorer are the further groupings of Instance Name and CAM Type Selecting these items produces the same results as selecting the corresponding items when the CAM Explorer is being grouped by Instance Name or CAM Type The difference is that the check box
109. ta Copyright 2004 Anadigm Inc All Rights Reserved 58 UM020800 U0010 7 4 14 DecrementClockDivisor void DecrementClockDivisor Chip chip ClockDivisor nDivisor Description Decrements the current value of a clock divisor to the next valid divisor value Parameters chip The ID the C Code generated for the chip This will be something like chipName or an_chipName depending on the name of the chip and the generation options nDivisor A clock divisor ID generated by the C Code The possible values are ClockDivisor PreScale ClockDivisor Clocko ClockDivisor Clockl ClockDivisor Clock2 ClockDivisor Clock3 ClockDivisor Chopl ClockDivisor Chop2 Return Value None Remarks This function appends bytes to the current reconfiguration data for the chip It is assumed that nDivisor is a valid clock divisor value The change takes place immediately internally meaning subsequent calls to GetClockDivisor for this chip and divisor will return the value set here If the divisor is already at its lowest value this function has no effect and no new bytes will be appended to the reconfiguration data 7 4 15 ClockUpdatesFinished void ClockUpdatesFinsihed Chip chip Description Clears the Update CLKS bit Parameters chip The ID the C Code generated for the chip This will be something like chipName or an chipNanme depending on the name of the chip and the generation options Return Value None Remarks When a reconfigurat
110. tabs in this portion of the window include System Filter Properties and Input Copyright 2004 Anadigm Inc All Rights Reserved 70 UM020800 U0010 System Tab The System tab defines the target FPAA type in this case and AN221E04 The Select button recalls the Circuit Options dialog described above General Properties Target Device Type AMZZ1E04 i Controller Type PID Master Chip Clock sets the expected frequency of the analog clock for the device The Controller Type drop down selection box 16000 includes choices for P PI PD and PID controller topologies Proportional Integral Differential Master Chip Clack Offset Compensation D y The Offset Compensation control adds DC offset to the output of the control circuit JO System Filter Properties Filter Tab The Filter tab controls whether or not a low pass filter is included for the controller s output and Her sets parameters for that filter i Enable filter on controller output Filter type Bilinear Y The filter constant is usually specified as a corner Filter constant 1120 Hz Fo v frequency in Hz Optionally input units may be set to Radians s or S The filter type options available are bilinear and a higher order biquadratic J System A Fi Properties Copyright 2004 Anadigm Inc All Rights Reserved 71 UM020800 U0010 Properties Tab PID Constants Min Requested Realized Max ES D 15 L eg I
111. tcutedadaceandesadesueenededuhdddndesasceuecedededindddaddexssgsadaneteeesdasetonnddacas 15 3 5 settings Pull Down MENA EE 19 TND NN 19 SE ON SS ee 21 3 6 Dynamic Config Pull Down Menu ccccecccc cece eeeceeeeeeeeee esse eeee cess eeeseeeseeeseeeeeeeseeeeseeeseeesaeesaneeseeegs 21 3 7 Target Pull Down TT TEE 22 3 0 VIEW E HE Bien WEE ER 3 9 Tools Pull Down NCTA EE 22 RUTEN NN 23 4 Designing for Low Power Operation 24 ge ein Bandwidth vs e Ee EE 24 e FEN srorssinrsinei nE EENT EE EE Nra GSE E EAA ESEE EER T ET EEES 24 4 3 Very Low Power Dynamic Sleep Mode rrrarrnnnnnnnnnnnnnnnnennnnnnnnnnnnnnnnennnenanennnennannnanennnennnennnsnnnsennsnsne 25 5 Configuration File Formats 26 5 1 The Serial Port Data Stream E 26 E O e tu E 26 OM HEFE en ue 27 94 Binan PER ON VAG ee 2 NRL KE 2 6 Functional Simulator 28 6 1 Simulator NNN E 28 6 2 Simulator Performance EE 28 6 3 Signal Clo Ee 29 SP ee GE FUR UO g EE 29 6 3 2 Sine Sawtooth and Triangle Wave Generators rrarrrarnnrrnanennrnnernanennennernanennennnnnanennennennuneneennenn 29 6 3 3 Square Wave Generator 0 nn0nnannnnnrn1rnnorrrarrnrrrrerrrrnrrnrrnrrrrerrrrrrrnrrnrrnnrnrrorronrrrerrernrenrrenernrro renne 30 6 3 4 Signal Data File Generator 30 6A SANSENE EE EE 31 6 5 II e ug Up and RUN EE 31 6 6 Oscilloscope Window Viewing Simulation Results rrrrnarennnennnrnnnrnnnnnnnnnrnnennnrnnnrnnnsnnnsnnnnennsennnnenn 31 7 Hosted Configu
112. ter Right CI Gaininv Right DN Gain Left Display Options InputCell4 Only show programmable items Figure 27 Disabling C Code Generation by CAM Instance Name Filter Left Right now all of the C Code functions for the Filter_Right and the Gain_Left will be generated We may not need every function they have to offer so we will probe a little further to suppress the C Code generation of the unwanted functions By clicking on the next to Instance Name in the CAM Explorer on the left we can expand the node to list all of the CAM instance names First select Filter_Right The Selection Pane right side then shows all of the available C Code functions for that CAM instance For this example there is no requirement to explicitly Copyright 2004 Anadigm Inc All Rights Reserved 38 UM020800 U0010 TM ana change capacitor values using C Code so disable the function SetBQHighPassCaps Next select Gain_Left in the CAM Explorer Turn off the fixed setGainHold function by unchecking it in the Selection Pane CAM C Code Functions Group By Gain lnefance Hare TY full fixed point method for setting the gain of the module It accepts Cancel ee floating point inputs and returns a floating point result EH a Instance Name double fixed setGainHold double G Help Filter Left EE full floating point method for setting the gain of this module d Filter Right d je G
113. ueeeuseseeeseeeseeees 3 Figure 3 Set CAM Parameters ccccecccssccceeeceeecsecencecseecaueceueecueeseueceueceueceueecaueceuecsueesaeesuseteeesueeseeesgees 4 Figure 4 Left Legal Connection Right The Illegal Connection Attempt is Disallowed rrrrrnrrnnnrrnnnevanennre 5 AnadigmDesigner amp 2 User Interface Figure 5 New Design Undocked Tool Palette 20 0 0 ceccccccceeeceeeceeeeeeeeseeeseeeeeeeeseeeseeeseeeeeeeeseeeeseeeseeees 6 Figure 6 Short Cut Button and Keystrokes 200 ccc cccccccccceececeeeceeeceeeeeeeeseeeseeeeeeeeeeeeseeeseueseeeeseeeseeesseeeseeesenees 6 Figure 7 An Overview of All Available Menu Items rrrrrrrnnrrnnrnanrnnanrranennnrnrnnnranennnrnnnennarrnnnrnnernnarnnnnennnnnneen 7 Detailed Reference Guide Figure 8 The CAM Selection Dialog BOX rrrrnnnrnnnrnnnrrnnnnnnnnnanenanrnnnrnnnnnnnnnnnnnnnnnnnnnnnnnnnnnenanenanennrnnnnnnnnnennsennn 10 Figure 9 A Typical Set CAM Parameters Dialog BOX rrrrrrnrrnnnrnnnnennnennnnnnnnnnnnenanennnnnnnnennnennannnnnennennnennnsennn 11 Figure 16 CAM Dragging EE 12 Figure 11 Left Wire Drag Right Label Drag ce ceccccccceeeeeeeee seca eens eeeaeeeeseesaeeseeeesueseueeseeeseesaees 14 Figure 12 Configuration File Options from Write Configuration Data 16 Figure 13 A Typical Connection Scheme for a Host Microprocessor sonnsnneennennennsnnnnnnnnnnrnrrrsrrenrnnenenne 17 Figure 14 A Typical Connection for Cl
114. uously downloaded to a target system enables the live tuning of controller circuits created with AnadigmPID PID Controller Tuning PID Constants P ikoj i daf 0 000102 Did 1 07e 005 Signal Path Clock Requested Realized 15 15 5 37 5 37 us 0 109 0 109 ms 100 00 KHz Figure 38 Fine Tuning Slider Controls Convenient for Tuning Live Systems Copyright O 2004 Anadigm Inc All Rights Reserved 72 UM020800 U0010 Input Tab 19 AnadigmPID Temp Controller apd File View Circuit Help Deuse Design Notes f BlockDiagram G TransferFx PLANT CG F EE SE mm Set Point ef External Set Point Get Polat Village Scaling M PY Scaling On Iw SP Scaling On iv Invert Invert Min Max Input Range Scale To Realized AnadigmDesigner2 Temp Controller ad2 FEER File Edit Simulate Configure Settings Dynamic Config Target View Tools Help DSH 6 ath 2 VAs P ZK ANI21E04 LOAD ORDER 1 g Temp Controller For Help Press F1 Copyright 2004 Anadigm Inc All Rights Reserved The Input tab allows for control over several aspects of the controller circuit inputs Scaling and or inversion can be applied to the PV signal the feedback signal from the plant Similarly scaling and or inversion is available for the Set Point signal SP Selecting scaling adds gain ports at the FPAA boundary of the block diagram
115. ussed in sections 7 5 1 and 7 5 2 namely C Code and Raw Data for State Driven dynamic reconfiguration If the FPAA is first reset it is practical to use only the Primary Configuration portions of the data generated by these features The third form of configuration data created by AnadigmDesigner 2 is the configuration data file While intended for use with a PROM programmer these various data file formats are perfectly suitable for access by a host processor for Static Configuration In fact the Raw Data format used in State Driven Dynamic Configu ration is the same as the ahf configuration file format described in section 5 3 Since AN120E04 and AN121E04 devices do not accept reconfiguration data only a reset sequence followed by a Primary Configuration sequence is possible for host driven Static Configuration Copyright O 2004 Anadigm Inc All Rights Reserved 64 UM020800 U0010 ra El 8 AnadigmFilter AnadigmFilter is a powerful design aid for the creation of higher order filters The standard CAM libraries provide first and second order filters that only require user selection of corner frequency gain and Q These standard library filter elements may be cascaded to realize filters of higher order but doing so effectively usually requires using supplementary filter design reference materials and significant manual calculations As an alternative AnadigmFilter completely automates the design and implementation of higher order filters Th
116. w have been modified since the last save the program will give you the opportunity to save prior to overwriting with the contents of the file to be opened The Save command will save the current design to its associated ad2 file If the design window happens to be currently Untitled then Save will behave the same as the Save As menu item Save As The Save As command saves the current design using a new ad2 appended filename A typical appli cation would be to open some reference design make some modifications and Save As some new name This will not affect the contents of the reference design s ad2 file which was first opened Check Sheet Check Sheet Design Rule Check CAM Versions tal Versions GAM Instance chip FilterBiline arl chipl Hold Library Type Version Approved ANSZ1 Standard FilterBilinear Bilinear Filter ZU es Ake Standard Hold Sample and Hold 1 0 3 Tez Copyright 2004 Anadigm Inc All Rights Reserved 8 UM020800 U0010 Every ad2 design file carries within it all the information required by any installation of AnadigmDesigner 2 to re open that design exactly as it was last saved Placing a CAM or an IO Cell in a design results in the creation of a complete copy of that CAM or IO Cell from the current library or software installation into the ad2 file Libraries then are only referenced when creating new instances within a design Ther
117. yte Data must be shifted into the FPAA most significant bit first Parameters chip The ID the C Code generated for the chip This will be something like chipName or an_chipName depending on the name of the chip and the generation options pCount A pointer to a valid integer that will receive the number of bytes in the array returned by the function Return Value A pointer to the reconfiguration data that can be sent to the chip Example Get a pointer to the reconfiguration data int dataSize 0 const Byte pData GetReconfigData chipName amp dataSize Send the data to the chip OK Data sent now clear the buffer to get ready to call some more CAM func tions ClearReconfigData chipName Copyright 2004 Anadigm Inc All Rights Reserved 53 UM020800 U0010 AnadigmDesigner amp 2 User Manual 7 4 7 GetReconfigControlFlags ControlByte GetReconfigControlFlags Chip chip Description Gets the control byte in the reconfiguration data for the chip Parameters chip The ID the C Code generated for the chip This will be something like chipName or an chipName depending on the name of the chip and the generation options Return Value A combination of one or more ControlByte flags generated by the C Code The possible flags are ControlBbyte Pullups ControlByte EndExecute ControlByte SReset ControlByte Read ControlByte InhibitRdbck ControlByte R setAll Remarks Using the ANSI C bitwise AND

Download Pdf Manuals

image

Related Search

Related Contents

altor 8 - Marinelec  StudioMaxIII Manual rev 5  Guide de la déclaration 2013 - Eco  Mode d emploi EPF LF5 SV meche a etoupille  Owner`s Manual - English - Champion Power Equipment  User Manual  DOC TECHNIQUE ( 163 Ko)  DE NORME RGIONALE POUR LE TAHIN  trendwerk77 ICD2745 mobile headset    

Copyright © All rights reserved.
Failed to retrieve file