home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1996 September / pcwk_09_96.iso / demo / elmark / cupl / manual / ug1.txt < prev    next >
Text File  |  1992-01-17  |  7KB  |  170 lines

  1. .C1. INTRODUCTION TO CUPL           U1
  2.  
  3.     Welcome to CUPL Universal Compiler for Programmable Logic. CUPL is a
  4.     very versatile and powerful logic compiler, and can be used to
  5.     create very sophisticated logic designs for PLDs.  This section will
  6.     introduce the user to CUPL.
  7.  
  8. o    .c2.CUPL OVERVIEW
  9.     The CUPL package consists of the following programs: CUPL (Universal
  10.     Compiler for Programmable Logic), CSIM (CUPL Simulator), CBLD (CUPL
  11.     Build), and PTOC (PALASM to CUPL Translator).
  12.  
  13.     Using CUPL, logic descriptions may be written and compiled. The 
  14.     logic descriptions can be assigned to specific programmable logic 
  15.     devices (PLDs).  CUPL searches its library and creates a file which 
  16.     can be downloaded to a device programmer and, from there, the PLD 
  17.     can be programmed.
  18.  
  19.     CSIM permits a design to be simulated before it is put into
  20.     production.  A file is created, describing the expected
  21.     functionality of the PLD in terms of input and output values.  CSIM
  22.     compares the expected values to actual values calculated during CUPL
  23.     operation.  The DOS version of CSIM will also allow the simulation
  24.     to be viewed in waveform.
  25.  
  26.     CBLD allows the manipulation of the device libraries containing
  27.     descriptions of the PLDs supported by CUPL.
  28.  
  29.     PTOC converts PALASM designs to CUPL format.  The key features of
  30.     the CUPL package include:
  31.  
  32.     _      Universal applicability.  CUPL supports products from all 
  33.            manufacturers of PLDs, enabling a user to put the same 
  34.            functional logic into physically different parts, to create a 
  35.            second source at the socket. CUPL produces a standard type of 
  36.            file called JEDEC.  This is a download file that is 
  37.            compatible with any logic programmer that uses JEDEC files. 
  38.            The CUPL language translator (PTOC) converts .i.PALASM;PALASM 
  39.            designs to CUPL, enabling the use of any PALASM designs.
  40.  
  41.     _      A high-level language.  Expression substitution for 
  42.            equations, shorthand notation for lists, address ranges, and 
  43.            bit fields are available to save design time.
  44.  
  45.            CUPL simplifies Boolean expressions by the distributive 
  46.            property and DeMorgan' s Theorem.
  47.  
  48.            State machine syntax provides a powerful means of 
  49.            implementing any synchronous application using either Mealy 
  50.            or Moore state machine models.
  51.  
  52.            Truth table syntax provides a way to clearly express certain 
  53.            logic descriptions.
  54.  
  55.            User-defined functions allow the creation of keywords for use 
  56.            by CUPL.
  57.  
  58.     _      Flexible documentation.  CUPL provides a template file for 
  59.            standard "fill in the blanks" documentation and allows the 
  60.            placement of free-form comments throughout a design.
  61.  
  62.            CUPL's comprehensive error-checking capability generates 
  63.            detailed error messages designed to lead to the source of any 
  64.            problems.
  65.  
  66.     _      Powerful minimizer and simulation programs. CUPL contains the 
  67.            fastest and most powerful minimizer offered for programmable 
  68.            logic equation reduction, featuring four levels of 
  69.            minimization.
  70.  
  71.            The CUPL simulation program enables logic to be simulated 
  72.            prior to using a PLD.  This feature prevents blown devices 
  73.            and helps debug system-level problems. Test vectors verified 
  74.            by CSIM can be downloaded to a logic programmer.
  75.  
  76. o  .c2.CUPL DATA FLOW
  77.  
  78.     This section describes the CUPL data flow.
  79.  
  80.     First, a logic description source file is created, using the CUPL 
  81.     language to describe the logic that will be assigned to a 
  82.     programmable logic device.
  83.  
  84.     Then, run CUPL to compile the source file to create a fusemap file 
  85.     for downloading to a device programmer. On execution of CUPL, the 
  86.     '-a' flag may be used to cause CUPL to generate an '.ABS' file for 
  87.     later use by CSIM.
  88.  
  89.     Optionally, a test specification file may be created to verify the 
  90.     design. CSIM is executed to compare the expected values in the test 
  91.     file to the actual values in the absolute file created by CUPL. When 
  92.     simulation is complete without any errors, the verified test vectors 
  93.     can be appended to the download file generated by CUPL.
  94.  
  95.     At this point, the verified fusemap file can be transferred to a 
  96.     device programmer.  Figure U1-1 shows the CUPL data flow.
  97.  
  98.     [Picture]
  99.         Figure U1-1. CUPL Data Flow
  100.  
  101.     Output file types:     
  102.         .SO    Simulator Output with errors 
  103.         .HL    HL Download file 
  104.         .HEX   Hex Download file 
  105.         .JED   JEDEC file without test vectors
  106.                JEDEC file with test vectors
  107.  
  108. o  .c2.SYSTEM OVERVIEW
  109.  
  110.     CUPL (Universal Compiler for Programmable Logic) is a set of 
  111.     programs that provides tools for designing with PLDs. The CUPL 
  112.     system consists of the following modules:  CUPLX, CUPLA, CUPLB, 
  113.     CUPLM, and CUPLC. A brief description of each of the program modules 
  114.     follows.
  115.  
  116.  
  117.  
  118.     [Picture]
  119.  
  120.      Figure U1-2. CUPL Execution Flow
  121.  
  122.     CUPLX:  CUPL Language Preprocessor Scans the .PLD (input) file, 
  123.     processing the preprocessor directives, i.e. $DEFINE.  Generates an 
  124.     intermediate file with all preprocessor directives expanded.
  125.  
  126.     CUPLA:  CUPL Language Parser Scans and parses the intermediate file 
  127.     generated by CUPLX.  Utilizes a table driven parser to generate a 
  128.     symbol table and expanded equations. Expands state machine, truth 
  129.     table, and user defined function syntax into boolean equations. 
  130.     Also, performs simple logic reduction while processing range 
  131.     statements.
  132.  
  133.     CUPLB:  CUPL Design to Target Device Linker Resolves links between 
  134.     design and the target device model. Expands the parsed equations 
  135.     according to signal polarity and physical characteristics, via 
  136.     DeMorgan's Theorem.  Builds the final symbol table, containing 
  137.     device model links, and bit mapped representation of the logic 
  138.     design.
  139.  
  140.     CUPLM:  CUPL Logic Minimizer Executes logic minimization algorithms 
  141.     on the bit mapped logic generated in CUPLB.  Processes only the 
  142.     equations for which reduction has been requested.  If no reduction 
  143.     is requested then the intermediate file generated by CUPLB is 
  144.     renamed for use by CUPLC. Performs multiple output minimization for 
  145.     FPLA architecture.
  146.  
  147.     CUPLC:  CUPL Design Fitter Determines if the design fits the target 
  148.     device architecture and builds a fuse map.  The fuse map and symbol 
  149.     table are used to generate the documentation and JEDEC files.
  150.  
  151.           [Picture]
  152.  
  153.     Figure U1-3. Device Independent Design Flow
  154.  
  155.           [Picture]
  156.     Figure U1-4.  Device Specific Design Flow
  157.  
  158.  
  159.  
  160.     [Picture]
  161.     Figure U1-5.  CUPL Device Fitting
  162.  
  163.     Some Fitter programs currently available include:
  164.  
  165.         CUPLC    generic device fitter
  166.         FITR     MACH device fitter
  167.         FITMAPL  MAPL device fitter.
  168.  
  169.  
  170.