Nathan SlingerlandCS294-7 Reconfigurable ComputingDay 27 Notes

Day 27

Specialization and Binding Time


  1. Data Entropy

  2. Data Processing Inequality

  3. Binding Time

  4. Specialization

  5. Case Studies in Specialization
    1. Fixed Benefit Due to Specialization: Matching (a=b)

      b variableb constantw/statew/o state
      sizeCLBspathCLBspathArea-Time ratioArea-Time ratio
      8 2.5 (+4) 2 1.5 2 0.60 0.23
      16 5.5 (+8) 3 2.5 2 0.30 0.12
      32 10.5 (+16)3 5.5 3 0.52 0.21
      64 21.5 (+32)4 10.5 3 0.37 0.15

      Note: In the size 16 and 64 cases, the AT ratios exhibit oddly low results relative to neighboring values. This is due to their fully utilizing the 4-LUT's in the Xilinx array. (These cases were repeated with the Altera Flex 8000 and Actel Act2 families of devices to insure that results are independent of the particular FPGA design.)

    2. Negligible Benefit Due to Specialization: DES F Function

      k variablek constant
      FunctionSpeed MappedArea MappedSpeed MappedArea Mapped
      (size)CLBsPathCLBsPathCLBsPathCLBsPath
      F 290.5 7 282 8 <280 6 ~2507

      Notes: The F function which forms the kernel of the DES algorithm takes a 32-bit data input and a 48-bit key input to generate a 32-bit output. The F function includes an expansion of the input, an XOR with the key, lookup through 8 S-boxes and a permutation of the output bits. Since the key is XOR'd with the expanded data, the output of the XOR can still take on any input value. Specialization succeeds only in removing the XOR stage, but very little of the encoding logic. Hence the small benefit.

    3. Variable Benefit Due to Specialization: Less Than (a<b)

      b variableb constant
      FunctionSpeed MappedArea MappedSpeed MappedArea Mapped
      (size)CLBsPathCLBsPathCLBsPathCLBsPath
      8 4 8 4 8 <2 <2 <1.5 <3
      16 18.5 14 16.5 16 <6.5 <3 <3 <5
      32 35 19 36 24 <13.5 <4 <6 <11
      64 77.5 20 74.5 28 <30 <5 <14 <16


    4. General Result: specialized instances have a slightly shorter critical path while requiring significantly less area

  6. Specialization Through Bounding

  7. Savings Through Specialization

  8. Instruction Load

  9. Instruction Space

  10. Variable Space

  11. Review