User Tools

Site Tools


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


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


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


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


  • 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:


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