Skip to content

[P3] Deprecate ConstQueue but leverage RegisterCluster for const values #127

@tancheng

Description

@tancheng

Deprecate ConstQueue (https://github.com/tancheng/VectorCGRA/tree/master/mem/const) but leverage RegisterCluster (https://github.com/tancheng/VectorCGRA/tree/master/mem/register_cluster) for const values.

Specifically,

  • We need to feed the preloading const data towards RegisterCluster rather than ConstQueue here:

    VectorCGRA/tile/TileRTL.py

    Lines 230 to 234 in 826ccd5

    elif s.recv_from_controller_pkt.val & (s.recv_from_controller_pkt.msg.payload.cmd == CMD_CONST):
    s.const_mem.recv_const.val @= 1
    s.const_mem.recv_const.msg @= s.recv_from_controller_pkt.msg.payload.data
    # s.const_mem.recv_const.msg.predicate @= 1
    s.recv_from_controller_pkt.rdy @= s.const_mem.recv_const.rdy
  • And update the ctrl signals in all the tests accordingly
  • And remove all the const related stuff across FUs like this:
    s.recv_const.rdy @= s.send_out[0].rdy
  • However, after above modifications, we are not able to iterate a set of const any more, which requires a special FU for incremental loading
    • Or we can keep above const related stuff but additionally include the RegisterCluster related preloading/config

Metadata

Metadata

Assignees

Labels

new featureNew feature or request

Projects

Status

No status

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions