Research
Line 99: | Line 99: | ||
| width="696" |'''Developed Tools''' | | width="696" |'''Developed Tools''' | ||
|} | |} | ||
− | {| style="border:1px solid #abd5f5; background:#f1f5fc;" | + | {| style="margin-left: auto; margin-right: 0px; border:1px solid #abd5f5; background:#f1f5fc;" |
+ | |||
| | | | ||
{| | {| | ||
Line 110: | Line 111: | ||
|- valign="top" | |- valign="top" | ||
| '''description''': | | '''description''': | ||
− | | Two optimal synthesis tools Tool-1 and Tool-2 are developed in Matlab and Python, respectively. Both tools aim to synthesize a given target Boolean functions with an optimal size of four-terminal switch based arrays . | + | | width="524"| Two optimal synthesis tools Tool-1 and Tool-2 are developed in Matlab and Python, respectively. Both tools aim to synthesize a given target Boolean functions with an optimal size of four-terminal switch based arrays . |
|} | |} | ||
| align=center width="70" | | | align=center width="70" | | ||
Line 187: | Line 188: | ||
| width="696" |'''Developed Tools''' | | width="696" |'''Developed Tools''' | ||
|} | |} | ||
− | {| style="border:1px solid #abd5f5; background:#f1f5fc;" | + | {| style="margin-left: auto; margin-right: 0px; border:1px solid #abd5f5; background:#f1f5fc;" |
+ | |||
| | | | ||
{| | {| | ||
Line 198: | Line 200: | ||
|- valign="top" | |- valign="top" | ||
| '''description''': | | '''description''': | ||
− | |The tool is developed in Matlab. It aims to map logic funtions into fault crossbars such that each crosspoint has an independent fault probability up to 20%. | + | | width="524"| The tool is developed in Matlab. It aims to map logic funtions into fault crossbars such that each crosspoint has an independent fault probability up to 20%. |
|} | |} | ||
| align=center width="70" | | | align=center width="70" | |
Revision as of 09:13, 13 April 2017
We aim to develop a complete synthesis and performance optimization methodology for switching nano-crossbar arrays that leads to the design and construction of an emerging nanocomputer. Our objectives are 1) synthesizing Boolean functions with area optimization; 2) achieving fault tolerance; 3) performing performance optimization by considering area, delay, power, and accuracy; 4) implementing arithmetic and memory elements; and 5) realizing a synchronous state machine.
Logic Synthesis | |||||||||||||||||||||||||||||||||
We study implementation of Boolean functions with nano-crossbar arrays where each crosspoint behaves as a diode, a FET, and a four-terminal switch. For these three types, we give array size formulations for a given Boolean function. Additionally, we focus on four-terminal switch based implementations and propose an algorithm that implements Boolean functions with optimal array sizes.
|
Fault Tolerance | |||||||||||||||||||||||
We examine reconfigurable crossbar arrays by considering randomly occurred stuck-open and stuck-closed crosspoint faults. In the presence of permanent faults, a fast and accurate heuristic algorithm is proposed that uses the techniques of index sorting, backtracking, and row matching. In the presence of transient faults, tolerance analysis is performed by formally and recursively determining tolerable fault positions
|
Performance Modeling and Analysis | |||||||||||||
We introduce an accurate capacitor-resistor model for nano-crossbar arrays that is to be used for power/delay/area performance analysis and optimization. In order to find capacitor and resistor values, we investigate upper/lower value limits for technology dependent parameters including doping concentration, nanowire dimension, pitch size, and layer thickness. We also use different fan-out capacitors to test the integration capability of these technologies.
|