1 / 40

Automated Mapping for Reconfigurable SET Arrays

Automated Mapping for Reconfigurable SET Arrays. Introduction. SET Single electron transistor Low power device Attractive at room temperatures. SET array architecture. current detector. Reconfigurable BDD-based architecture. All sloping edges are configurable

kalea
Download Presentation

Automated Mapping for Reconfigurable SET Arrays

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Automated Mapping for Reconfigurable SET Arrays

  2. Introduction • SET • Single electron transistor • Low power device • Attractive at room temperatures

  3. SET array architecture current detector • Reconfigurable BDD-based architecture • All sloping edges are configurable • short, open, active (high or low) • Active edges at the same row are controlled by a single variable 1

  4. Example: XOR high low short open • f = a⊕b a a’ b’ b 1

  5. Problem formulation • Given a Boolean function, map it into a reconfigurable SET array • Input: a boolean function • Output: a SET array

  6. Preliminaries current detector • BDD -> SET array 0 1 1 Crossing edges Position

  7. Our approach current detector • BDD -> product term -> SET array 0010 01-0 100- 11-- 0 1 1 Configure a path for each product term while avoid producing invalid product terms

  8. Key ideas • Depth-first search (DFS)-liked approach • Search and configure • Map all product terms one by one • Start from the root node (current detector) • Search and configure a path for a product term • Avoid invalid paths

  9. Example 1 010- 0110 101- 11-- high low short open

  10. Example 1 010- 0110 101- 11-- High Low Short Open

  11. Example 1 010- 0110 101- 11-- High Low Short Open

  12. Example 1 010- 0110 101- 11-- High Low Short Open

  13. Example 1 010- 0110 101- 11-- High Low Short Open

  14. Example 1: Compress 010- 0110 101- 11-- High Low Short Open

  15. Example 2 101- -1-0 0101 11-1 101- 01-0 0101 11-1 • 11-0 High Low Short Open

  16. Example 2 101- -1-0 0101 11-1 101- 01-0 0101 11-1 • 11-0 High Low Short Open

  17. Example 2 101- -1-0 0101 11-1 101- 01-0 0101 11-1 • 11-0 High Low Short Open

  18. Example 2 101- -1-0 0101 11-1 101- 01-0 0101 11-1 • 11-0 High Low Short Open

  19. Example 2 101- -1-0 0101 11-1 101- 01-0 0101 11-1 • 11-0 High Low Short Open

  20. Example 2 101- -1-0 0101 11-1 101- 01-0 0101 11-1 • 11-0 High Low Short Open

  21. Example 2: 101- -1-0 0101 11-1 101- 01-0 0101 11-1 • 11-0 High Low Short Open

  22. Example 2: Compress 101- -1-0 0101 11-1 101- 01-0 0101 11-1 • 11-0 High Low Short Open

  23. Flow Input: a boolean functionf • Construct an ROBDD dd of f by using the CUDD package • Reorder dd with the heuristic method, CUDD_REORDER_SYMM_SIFT, in CUDD • Collect product terms PTs by tracing dd • Preprocess PTs to ensure at most only two different values appear at the first bits • Sort PTs by using the proposed heuristic Map product terms into a SET array by using the proposed mapping algorithm Output: a configured SETarray

  24. Experiments • Product term count and order • 7 heuristics • LexSort • ‘-’ > 1 > 0 • Reorder, LexSort • Reorder • LexSort, Reorder • Inertia, Reorder • For. inertia, Reorder • Back. + For. inertia, Reorder

  25. Experimental results

  26. Experimental results

  27. New improvements • Mapping method • Mapping constraints

  28. Mapping algorithm • Node n • n.left always has a higher priority than n.right for configuration • ---01, --0-1, -1-0-, -10--, • Node n = (x, y) • If x >= 0, n.left has a higher priority • Otherwise, n.right has a higher priority • ---01, --0-1, -1-0-, -10--, DATE vision New vision

  29. Comparison

  30. New constraints • Mode constraint: active/short is not allowed • Input constraint: high/high, low/low are not allowed • Granularity constraint:only high/low, short/short, and open/open are allowed • Fabric specification: (high, low) and (low, high) cannot simultaneously appear in a low

  31. BDD-based product term collection High • No constraint Low 0110- 010-- 11--- 101-- Short

  32. BDD-based product term collection High • Mode constraint Low 0110- 010-- 11--- 101-- Short

  33. BDD-based product term collection High • Input constraint Low 0110- 010-- 11--- 101-- Short

  34. BDD-based product term collection High • Granularity constraint Low 0110- 010-- 11--- 101-- Short

  35. BDD-based product term collection High • Fabric constraint Low 0110- 010-- 11--- 101-- Short

  36. Espresso-based product term collection High • No constraint Low -1-0- -10-- 1-1-- Short

  37. Espresso-based product term collection High • Mode constraint Low -1-0- -10-- 1-1-- 11-0- 110-- 1-1-- 01-0- 010-- Short

  38. Espresso-based product term collection High • Input constraint Low -1-0- -10-- 1-1-- 11-0- 110-- 1-1-- 01-0- 010-- Short

  39. Espresso-based product term collection High • Granularity constraint Low -1-0- -10-- 1-1-- 11-0- 110-- 1-1-- 01-0- 010-- Short

  40. Espresso-based product term collection High • Fabric constraint Low -1-0- -10-- 1-1-- 11-0- 110-- 1-1-- 01-0- 010-- Short

More Related