Design and evaluation of a carbon nanotube-based programmable architecture

Scott Chilstedt, Chen Dong, Deming Chen

Research output: Contribution to journalArticlepeer-review

Abstract

In the hunt to find a replacement to CMOS, material scientists are developing a wide range of nanomaterials and nanomaterial-based devices that offer significant performance improvements. One example is the Carbon Nanotube Field Effect Transistor, or CNFET, which replaces the traditional silicon channel with an array of semiconducting carbon nanotubes (CNTs). Given the increased variation and defects of nanometer-scale fabrication, and the regular nature of bottom-up self-assembly, field programmable devices are a promising initial application for such technologies. In this paper, we detail the design and evaluation of a novel nanomaterial-based architecture called FPCNA (Field Programmable Carbon Nanotube Array). New nanomaterial-based circuit building blocks are developed and characterized, including a lookup table created entirely from continuous CNT ribbons. To accurately determine the performance of these building blocks, we create variation-aware physical design tools with statistical timing analysis that can handle both Gaussian and non-Gaussian random variables. When the FPCNA architecture is evaluated using this CAD flow, we see a 2.75× performance improvement over an equivalent CMOS FPGA at a 95% yield. In addition, FPCNA offers a 5.07× footprint reduction compared to the baseline FPGA.

Original languageEnglish (US)
Pages (from-to)389-416
Number of pages28
JournalInternational Journal of Parallel Programming
Volume37
Issue number4
DOIs
StatePublished - Aug 2009

Keywords

  • Discretized SSTA
  • FPCNA
  • FPGA
  • Nanoelectronics
  • Variation-aware CAD

ASJC Scopus subject areas

  • Software
  • Theoretical Computer Science
  • Information Systems

Fingerprint

Dive into the research topics of 'Design and evaluation of a carbon nanotube-based programmable architecture'. Together they form a unique fingerprint.

Cite this