User Tools

Site Tools


dual_port_binding_overview

Dual Port Binding Overview

  • Enables binding of both RAM ports in parallel functions
  • User specified strategies to bind ports
  • Goal is to reduce contention between parallel hardware accelerators

Directions

  • In config.tcl: add “set_parameter DUAL_PORT_STRATEGY <strategy>
  • <strategy> and be “back_and_forth”, “read/write”, or “random”

back_and_forth

  • Sequentially binds accesses to ports in a round robin fashion
  • Seen as the best strategy

read/write

  • Binds reads (loads) to one port and writes (stores) to the other

random

  • Binds accesses to random port

User Specification

  • User can also specify strategy on a variable by variable basis
  • This is done with syntax /*$<strategy>$*/ before a variable name
  • For example:

Results

With/Without Dual Port Binding

See links below for results on different benchmarks

matrixadd matrixmult los alphablend

dual_port_binding_overview.txt · Last modified: 2017/08/18 17:06 by zak