1 Known Issues and Change Log

This section presents known issues, limitations and change logs for the Configurable Logic Block (CLB) Synthesizer.

The CLB Synthesizer toolchain is comprised of:
  • The synthesis engine (backend), hosted in the cloud
  • CLB Synthesizer GUI hosted in the cloud at logic.microchip.com/clbsynthesizer/
  • CLB Synthesizer GUI integrated into MPLAB® Code Configurator (MCC), deployed via MCC Content Manager

Releases are tracked in CalVer format. Components included in a release follow SemVer.

If available, include the ZIP archive from the synthesis process when contacting Microchip Support.

Known Issues and Limitations

  • LOGIC-34: Logic synthesis may fail when signals are optimized into constants

    A logic design can fail to synthesize when it has an output signal that becomes optimized into a constant. Examples of this are a Look-up Table (LUT) symbol populated with 0x0000 or 0xFFFF values, a signal combined with its inverse, or a constant 0 or 1 symbol.

    Workaround: Use the zero input port as a constant source

  • LOGIC-48: It is not possible to change the interface of a module (sub-sheet) once used

    Workaround: When the interface of a module (sub-sheet) is changed, it is necessary to delete all instances of the use of this module and place the module once more.

  • LOGIC-545: It is not possible to make use of all input synchronizer options as described in the data sheet.

    Only synchronous, direct connection and rising/falling-edge detector options are available.

  • LOGIC-475: Timing information is unavailable

    The synthesis and place-and-route processes do not consider timing, and no timing information is made available on the results of this process.

Release 24.12.1

Scope: Synthesis backend, web version, and integrated MCC version

New features:
  • LOGIC-514, LOGIC-1537: BELS and .svg outputs

    The backend synthesis process produces BELS output converted to a .svg image, which provides information regarding which BLEs are used in hardware. The images are available in the GUI and inside the ZIP archive.

  • LOGIC-1342: Verilog syntax errors are shown after failed synthesis
  • LOGIC-1533: Redefined LUT to Table to clarify that it does not necessarily map directly to a hardware LUT
  • LOGIC-1514: Updated start page
  • LOGIC-1452: New Verilog files now include a template
  • LOGIC-1290: Design sidebar is now context-sensitive
Bugfixes:
  • LOGIC-1025: Port names no longer require Enter keypress
  • LOGIC-1343: stdout is now included in the ZIP archive
  • LOGIC-1526: Port rotation working for submodules
  • LOGIC-1209: Top-level document is now correctly passed into YoSYS

Release 24.2.1

Scope: Synthesis backend, web version, and integrated MCC version

New features:
  • LOGIC-1071: Improved feedback to users from backend synthesis process

    The CLB Synthesizer frontend GUI now includes a synthesis output tab, which gives more detailed information when backend synthesis fails.

  • LOGIC-1165: Prevent synthesis when design errors are present

    The Synthesis button is now disabled when design errors are present and can be bypassed in the Preferences dialog for debugging purposes.

  • LOGIC-1099: Provide an easier access to library modules

    The CLB library on GitHub is now accessible through the drawer menu in the Library section.

Bug fixes:

  • LOGIC-1096: Synthesis fails if an input port is connected directly to an output port

    You can now use the CLB to route input ports directly to output ports.

  • LOGIC-1048: Unable to synthesize Verilog files containing multiple comments

    The maximum file size limit has been increased in the backend server.

Release 23.12.1

New and noteworthy:
  • Initial public release