Skip to content

DataPath or Control logic? #32

Description

@drom

observable

Some of RTL structures describe control Logic and some DataPath
There is no direct way in Verilog or VHDL to express one or another.
In ASIC or FPGA both structures are implemented from the logic gates and Flip-Flops

It might be difficult to classify it with 100% certainty. But one should be able to assign some fuzzy value to each structure or wire by analyzing them in context.

How to classify?

feature datapath control logic
perform arithmetic operations (+ - *) +1
has regular 2^N width +1
it called bus +1
affects Flip-Flop enable +1
perform logic operations +1
drive MUX select +1
it is part of FSM +1
has 1-bit width +1
used as condition in if-else statement +1
signal reduced by comparison operator +1
loops +1

Detect State Machines

Finite State Machines (FSM) can be extracted from control logic blobs.

Why to classify?

  • DataPath and Control Logic require diferent visualization.
  • DataPath requires more directional drawing (Strict Left-to-Right or Top-to-Bottom)
  • Control Logic has more loops, Forward/Backward chains
  • Control Logic Diagram
  • FSM can be rendered as State Diagram
  • Rendered in the mix DataPath and Control Logic can have distinct shapes, colors, symbols

Example

Colors / Shapes

One option of using the classifier is to apply different line color/width on top of a schematic rendering.

Regions

Here is the case when DataPath and Control logic drew on the same schematic sheet but in two distinct regions.

References

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions