Create a projectΒΆ

  1. Create a new project

    Go to Edit > New. A new window will be opened.

    ../_images/howto_new.png
  2. Add blocks

../_images/howto_demo.gif

There are different types of blocks:

  1. Input/Output blocks

    Click on Basic > Input or Basic > Output, write the block's name and press OK or Enter.

    Also, it can be configured as buses using the [x:y] notation (x is the most significant bit).

    ../_images/howto_io-fpga.png

    If these blocks are used to build generic blocks, they should be configured as virtual (green). Then, the FPGA pin selector won't be shown.

    ../_images/howto_io-virtual.png
  2. Constant blocks

    Click on Basic > Constant, write the block's name and press OK or Enter.

    These blocks can be configures as local. Then, this parameter won't be exported.

    ../_images/howto_constant.png
  3. Memory blocks

    Click on Basic > Memory, write the block's name and press OK or Enter.

    These blocks can be configures as local. Then, this parameter won't be exported. Also you can update the address format of the memory to be binary, decimal or hexadecimal.

    ../_images/howto_memory.png
  4. Code blocks

    Click on Basic > Code, add the code ports. Port names are separated by a comma. E.g.: a, b.

    ../_images/howto_code-prompt.png

    This block contains a text editor to write your module in verilog code. Module header and footer are not required.

    ../_images/howto_code.png
  5. Info blocks

    Click on Basic > Info.

    This block contains a text editor to add comments about the project in Markdown or HTML.

    ../_images/howto_info.png

    It can be rendered simply by double-clicking the block.

    ../_images/howto_info-render.png
  6. Bit blocks

    Click on Bit > 0 or Bit > 1.

    These blocks are low and high logic drivers.

    ../_images/howto_bit.png
  7. Logic blocks

    Go to the Logic menu and select a block. This menu contains Gates, Combinational blocks and Sequential blocks.

    ../_images/howto_logic.png
  8. Setup blocks

    Click on Setup > Pull up or Setup > Tri-state.

    The Pull up block must be connected to input ports in order to configure a pull up in the FPGA.

    ../_images/howto_setup.png

In this example we are going to implement an AND logic gate with its input/output pins connected to the FPGA I/O.

../_images/howto_bwire.png
  1. Connect the blocks

../_images/howto_wire.png
  1. Select your board

    Go to Select > Board and select the board from the list.

    ../_images/howto_board.png
  2. Set FPGA I/O pins

    Select all Input/Output blocks' pins.

    ../_images/howto_fpgapin.png
  3. Save the project

    Go to Edit > Save as and select the project name, for example myProject.

    It will be saved as an .ice file.

    ../_images/howto_saveas.png