Skip to content
This repository has been archived by the owner on Jul 12, 2022. It is now read-only.

LFR Module Breakdown

Radhakrishna Sanka edited this page Nov 11, 2020 · 3 revisions

The module

The basic building block that can be used to describe a microfluidic device is the module. Each module requires the user to provide 2 things:

  1. Unique Identifier/Name
  2. I/O (Inputs, Outputs, Control Lines)
module <unique_name>(<inputs>, <outputs>, <control_lines>);

...

...

...

endmodule

While the user is allowed to not explicitly declare the I/O types it is recommended that the user explicitly declare types of inputs and outputs in the module header to make the description more readable.

module <unique_name>(
    finput <input_names>, 
    foutput <output_names>, 
    control <control_lines>
    );

...

...

...

endmodule

Importing a module

In order to simplify the specification and allow for the reusability of the LFR designs. The syntax for importing modules is given below:

`import <module_name>;

Instantiation

`import <module_name>;


module(...);

...

module_name instance_name(
    <inputs>,
    <outputs>,
    <control_lines>
);

...

endmodule