<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>ADC | Zhe Liu</title><link>https://zheliu0.com/category/adc/</link><atom:link href="https://zheliu0.com/category/adc/index.xml" rel="self" type="application/rss+xml"/><description>ADC</description><generator>Wowchemy (https://wowchemy.com)</generator><language>en-us</language><copyright>©2022 by Zhe Liu.</copyright><lastBuildDate>Thu, 13 May 2021 00:00:00 +0000</lastBuildDate><image><url>https://zheliu0.com/media/icon_hu68139e5a4da17f63f0ddead6be6ac005_40054_512x512_fill_lanczos_center_2.png</url><title>ADC</title><link>https://zheliu0.com/category/adc/</link></image><item><title>A 12-bit Two-Stage Pipelined SAR ADC design</title><link>https://zheliu0.com/post/getting-started/</link><pubDate>Thu, 13 May 2021 00:00:00 +0000</pubDate><guid>https://zheliu0.com/post/getting-started/</guid><description>&lt;h2 id="overview">Overview&lt;/h2>
&lt;p>In this project, we designed a 2-stage pipelined Successive Approximation Register (SAR) Analog to Digital Converter (ADC). SAR ADC architectures are popular for achieving high energy efficiency but they suffer from resolution and speed limitations. The pipelined SAR architecture divides a moderate resolution SAR ADC into some low resolution SAR ADCs.
The target specifications are given in the following table:&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Item&lt;/th>
&lt;th>Specifications&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>Technology&lt;/td>
&lt;td>45nm (NCSU FreePDK45)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Power supply&lt;/td>
&lt;td>VDD = 1.2V, VSS = 0V&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Resistor size&lt;/td>
&lt;td>&amp;lt; 100kΩ&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Capacitor size&lt;/td>
&lt;td>2fF~ 10pF&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>ENOB@ Nyquist rate&lt;/td>
&lt;td>&amp;gt;12bits&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Sampling rate&lt;/td>
&lt;td>&amp;gt;30MS/s&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Walden figure-of-merit (FOM)&lt;/td>
&lt;td>&amp;lt; 100-fJ/conversion-step&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;h2 id="get-started">Get Started&lt;/h2>
&lt;figure id="figure-high-level-block-diagram-of-the-pipelined-sar-adc">
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >
&lt;img alt="High Level Block Diagram of the Pipelined SAR ADC" srcset="
/media/adc1_hu9bd866c70e92a9bfe8b7d622b48e8c70_20284_b6dc95b4fc76107566f2aa644778ce26.png 400w,
/media/adc1_hu9bd866c70e92a9bfe8b7d622b48e8c70_20284_933212f4099d1a51d1eeeb8f4d5032b4.png 760w,
/media/adc1_hu9bd866c70e92a9bfe8b7d622b48e8c70_20284_1200x1200_fit_lanczos_2.png 1200w"
src="https://zheliu0.com/media/adc1_hu9bd866c70e92a9bfe8b7d622b48e8c70_20284_b6dc95b4fc76107566f2aa644778ce26.png"
width="760"
height="409"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;figcaption>
High Level Block Diagram of the Pipelined SAR ADC
&lt;/figcaption>&lt;/figure>
&lt;p>The diagram above shows the block diagram of the SAR ADC architecture. The ADC is a pipeline of a 6-bit and a 8-bit SAR ADCs. We decide to use differential sampling in order to cancel the common mode sampling offset. Furthermore, Vcm-based switching technique is used in both stages to lower the power consumption of the whole system.&lt;/p>
&lt;figure id="figure-stage-1-schematic-diagram">
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >
&lt;img alt="Stage 1 Schematic Diagram" srcset="
/media/adcst1_hufa369344b3a79c340cee1d21a8007248_18045_e4b0c4de2d3e511e7deaa7ce2f743004.png 400w,
/media/adcst1_hufa369344b3a79c340cee1d21a8007248_18045_97c8960b9ab9bd959781d7ba2ee753a9.png 760w,
/media/adcst1_hufa369344b3a79c340cee1d21a8007248_18045_1200x1200_fit_lanczos_2.png 1200w"
src="https://zheliu0.com/media/adcst1_hufa369344b3a79c340cee1d21a8007248_18045_e4b0c4de2d3e511e7deaa7ce2f743004.png"
width="656"
height="494"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;figcaption>
Stage 1 Schematic Diagram
&lt;/figcaption>&lt;/figure>
&lt;p>The first stage has 6-bit effective resolution. The first stage sub-ADC and CDAC share the same sampling capacitor array. There are several typical switching techniques that are available. We decide to use Vcm based switching technique mainly because the low power consumption and faster settling speed. However, one biggest drawback of this method is that it requires extra switches to control each capacitor. There are three possibilities at all sampling capacitors. Before the certain bit compared, the corresponding capacitor’s bottom plate is connected to Vcm. After comparison, its bottom plate will be connected to either ground or Vref depends on the comparing result is 1 or 0. Notice that the positive pair sampling capacitor array and the negative pair sampling capacitor array are connected opposite to each other. These sets of switches are controlled by a SAR logic unit which I&amp;rsquo;ll go over in next section. Additional independent clock sets are used to make sure each capacitor is in the right phase.&lt;/p>
&lt;figure id="figure-stage-2-schematic-diagram">
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >
&lt;img alt="Stage 2 Schematic Diagram" srcset="
/media/adcst2_hufc1658cf04a3ada933cb594ce942978a_16807_384f2ccebe6f95b99f2156af4c461962.png 400w,
/media/adcst2_hufc1658cf04a3ada933cb594ce942978a_16807_b5297090e8883ab1e633646d811c36fa.png 760w,
/media/adcst2_hufc1658cf04a3ada933cb594ce942978a_16807_1200x1200_fit_lanczos_2.png 1200w"
src="https://zheliu0.com/media/adcst2_hufc1658cf04a3ada933cb594ce942978a_16807_384f2ccebe6f95b99f2156af4c461962.png"
width="646"
height="516"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;figcaption>
Stage 2 Schematic Diagram
&lt;/figcaption>&lt;/figure>
&lt;p>The second stage is a 8-bit SAR ADC. The use of SAR architecture in the second stage enables a large resolution in this single stage. The implementation is very similar compare to the first stage but has two more capacitor sets.&lt;/p>
&lt;h2 id="sar-logic">SAR Logic&lt;/h2>
&lt;p>
&lt;figure id="figure-6-bit-sar-logic">
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >
&lt;img alt="6-bit SAR Logic" srcset="
/media/sarlogic1_hu9560965d6cac221fb2fe71f4104839ec_59862_a1ef684f6c84d18a890e43bf4c8d1fb3.png 400w,
/media/sarlogic1_hu9560965d6cac221fb2fe71f4104839ec_59862_9a9955befa0af485ce8798ea41a43192.png 760w,
/media/sarlogic1_hu9560965d6cac221fb2fe71f4104839ec_59862_1200x1200_fit_lanczos_2.png 1200w"
src="https://zheliu0.com/media/sarlogic1_hu9560965d6cac221fb2fe71f4104839ec_59862_a1ef684f6c84d18a890e43bf4c8d1fb3.png"
width="760"
height="332"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;figcaption>
6-bit SAR Logic
&lt;/figcaption>&lt;/figure>
The classic SAR architecture is use due to its straightforward design technique. Figure above is the implementation on Cadence. It consists of a set of ring counter and a set of shift regisiter. There are 2x6+2 = 14 D flip flops in use. For each conversion, piror to the first clock rising edge, RESET will first clocked high to reset all flip flop&amp;rsquo;s output to 0. After that, the RESET signal remains low for the reset of the process. Once the first rising edge approaches, the MSB flip flop is set to 1. Then when second rising edge approaches, the counter shifts 1 to the next flip flop until it reaches the LSB. SAR logic determains the value of bit one by one based on the comparator&amp;rsquo;s output. For a 6-bit SAR logic, it requires 1+6 = 7 cycles to complete one single conversion. Table below is the algorithm of 6-bit SAR logic.&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Clock&lt;/th>
&lt;th>D1&lt;/th>
&lt;th>D2&lt;/th>
&lt;th>D3&lt;/th>
&lt;th>D4&lt;/th>
&lt;th>D5&lt;/th>
&lt;th>D6&lt;/th>
&lt;th>COMP. Out&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>RESET&lt;/td>
&lt;td>0&lt;/td>
&lt;td>0&lt;/td>
&lt;td>0&lt;/td>
&lt;td>0&lt;/td>
&lt;td>0&lt;/td>
&lt;td>0&lt;/td>
&lt;td>&amp;ndash;&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>1&lt;/td>
&lt;td>1&lt;/td>
&lt;td>0&lt;/td>
&lt;td>0&lt;/td>
&lt;td>0&lt;/td>
&lt;td>0&lt;/td>
&lt;td>0&lt;/td>
&lt;td>D1&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>2&lt;/td>
&lt;td>D1&lt;/td>
&lt;td>1&lt;/td>
&lt;td>0&lt;/td>
&lt;td>0&lt;/td>
&lt;td>0&lt;/td>
&lt;td>0&lt;/td>
&lt;td>D2&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>3&lt;/td>
&lt;td>D1&lt;/td>
&lt;td>D2&lt;/td>
&lt;td>1&lt;/td>
&lt;td>0&lt;/td>
&lt;td>0&lt;/td>
&lt;td>0&lt;/td>
&lt;td>D3&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>4&lt;/td>
&lt;td>D1&lt;/td>
&lt;td>D2&lt;/td>
&lt;td>D3&lt;/td>
&lt;td>1&lt;/td>
&lt;td>0&lt;/td>
&lt;td>0&lt;/td>
&lt;td>D4&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>5&lt;/td>
&lt;td>D1&lt;/td>
&lt;td>D2&lt;/td>
&lt;td>D3&lt;/td>
&lt;td>D4&lt;/td>
&lt;td>1&lt;/td>
&lt;td>0&lt;/td>
&lt;td>D5&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>6&lt;/td>
&lt;td>D1&lt;/td>
&lt;td>D2&lt;/td>
&lt;td>D3&lt;/td>
&lt;td>D4&lt;/td>
&lt;td>D5&lt;/td>
&lt;td>1&lt;/td>
&lt;td>D6&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>7&lt;/td>
&lt;td>D1&lt;/td>
&lt;td>D2&lt;/td>
&lt;td>D3&lt;/td>
&lt;td>D4&lt;/td>
&lt;td>D5&lt;/td>
&lt;td>D6&lt;/td>
&lt;td>&amp;ndash;&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;p>Below is the SAR Logic testing result. Notice that the input (Data) is set to 110000. Our SAR Logic output for each bit matches the input correctly.
&lt;figure id="figure-sar-logic-testing">
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >
&lt;img alt="SAR logic testing" srcset="
/media/SARout_hu0b88845377c96fcca6efa7edb3748028_161070_8ace732188c9fccdaffe4c2fd92111f2.png 400w,
/media/SARout_hu0b88845377c96fcca6efa7edb3748028_161070_924d0087d235234efa7b30843f97dd2e.png 760w,
/media/SARout_hu0b88845377c96fcca6efa7edb3748028_161070_1200x1200_fit_lanczos_2.png 1200w"
src="https://zheliu0.com/media/SARout_hu0b88845377c96fcca6efa7edb3748028_161070_8ace732188c9fccdaffe4c2fd92111f2.png"
width="760"
height="323"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;figcaption>
SAR logic testing
&lt;/figcaption>&lt;/figure>&lt;/p>
&lt;h2 id="d-flip-flop">D Flip Flop&lt;/h2>
&lt;p>
&lt;figure id="figure-circuit-architecture-for-d-flip-flop">
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >
&lt;img alt="Circuit architecture for D Flip Flop" srcset="
/media/DFF_huf7b680ea658195c2250096975e3791cb_127206_a3e38ba722c1577e709b26c15b059b76.png 400w,
/media/DFF_huf7b680ea658195c2250096975e3791cb_127206_478e592bd57b6a25c7ec3f4c0872d678.png 760w,
/media/DFF_huf7b680ea658195c2250096975e3791cb_127206_1200x1200_fit_lanczos_2.png 1200w"
src="https://zheliu0.com/media/DFF_huf7b680ea658195c2250096975e3791cb_127206_a3e38ba722c1577e709b26c15b059b76.png"
width="760"
height="445"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;figcaption>
Circuit architecture for D Flip Flop
&lt;/figcaption>&lt;/figure>
Because SAR logic uses flip flop, we decide to implement a Positive-edge-triggered D flip-flop with Clear and Preset. Here, three input NAND gates are used. Below is the truth table of our DFF.
&lt;figure id="figure-truth-table-for-d-flip-flop">
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >
&lt;img alt="Truth Table for D Flip Flop" srcset="
/media/DFFtt_hubda336ffce84fb7ad23aacb25bfb72e8_8550_32720f778ab780fa6c5cc38a092c4299.png 400w,
/media/DFFtt_hubda336ffce84fb7ad23aacb25bfb72e8_8550_37c5af22e5bf74e7213b01b4e3d6235c.png 760w,
/media/DFFtt_hubda336ffce84fb7ad23aacb25bfb72e8_8550_1200x1200_fit_lanczos_2.png 1200w"
src="https://zheliu0.com/media/DFFtt_hubda336ffce84fb7ad23aacb25bfb72e8_8550_32720f778ab780fa6c5cc38a092c4299.png"
width="380"
height="319"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;figcaption>
Truth Table for D Flip Flop
&lt;/figcaption>&lt;/figure>&lt;/p>
&lt;h2 id="comparator">Comparator&lt;/h2>
&lt;p>
&lt;figure id="figure-strongarm-comparator">
&lt;div class="d-flex justify-content-center">
&lt;div class="w-100" >
&lt;img alt="strongARM comparator" srcset="
/media/comp_hucf783d86a1f520f9a028c01e08914cbf_50415_9815cadf6b2370ed8fe7c5bddc3f8558.png 400w,
/media/comp_hucf783d86a1f520f9a028c01e08914cbf_50415_d26faf80c84367a766cb363652b3d8a3.png 760w,
/media/comp_hucf783d86a1f520f9a028c01e08914cbf_50415_1200x1200_fit_lanczos_2.png 1200w"
src="https://zheliu0.com/media/comp_hucf783d86a1f520f9a028c01e08914cbf_50415_9815cadf6b2370ed8fe7c5bddc3f8558.png"
width="507"
height="434"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;figcaption>
strongARM comparator
&lt;/figcaption>&lt;/figure>
For the comparator, the StrongARM latch is selected for our design.&lt;/p>
&lt;h2 id="license">License&lt;/h2>
&lt;p>Copyright &lt;a href="zheliu0.com">Zhe Liu&lt;/a>.&lt;/p></description></item></channel></rss>