CMOS組合邏輯

1. 靜態互補CMOS

實際上就是靜態CMOS反相器擴展為具有多個輸入。更反相器一樣具有良好的穩定性,性能和功耗。

  • 靜態的概念:每一時刻每個門的輸出通過低阻抗路徑連到VDD或VSS上。任何時候輸出即為布爾函數值。
  • 動態電路通常依賴把信號暫存在高阻抗節點的電容上。

1.1 閾值損失

互補結構PUN(pull up network)+PDN(pull down network)可以解決。上拉采用PMOS,下拉采用NMOS。

1.2 兩輸入與非門實例

與非門的VTC曲線與輸入有關,從下圖可以發現,A=B=0時,PUN全部導通,對應強上拉,而當A或B中有不導通的時候,PUN中只有一個導通,相當于驅動能力下降(在反相器中提到P管驅動能力下降導致VTC左移,VM上漂),因此VTC左移到紅色和綠色線。
而紅綠兩線的主要區別在于NMOS的內部節點int上,由于體效應的緣故會使得M1和M2在分別導通時閾值電壓不同,VTC曲線會有微小的差異。

undefined

雖然互補CMOS是實現邏輯門比較簡單的方式,但是隨著扇入增加,會帶來兩個問題

  • 實現一個N扇入的門需要2N個器件,會增大實現面積。
  • 互補CMOS的傳播延時隨著扇入增大迅速增大(無負載本征延時在最壞時與扇入成二次函數關系)

1.3 延時與扇入的關系

例如對于一個四輸入與非門

  • 在最壞情況下,PUN只導通一條通路,此時從低到高的延時tpLHtpLH最大,當增大扇入數,PUN的器件隨著扇入線性增加,電容也線性增加,但最壞情況PUN的等效電阻不變,因此tpLHtpLH隨著N的增加呈線性增加
  • 而對于PDN,串聯會使得門進一步變慢。在PDN中分布RC網絡帶來的延時與串聯鏈元件數呈平方關系。

下圖是NAND門的本征傳播延時與扇入的關系曲線:

?

1.4 解決大扇入的方法

  1. 增大晶體管尺寸。可以減少串聯電阻。
    • 局限:會增加寄生電容。只有當負載以扇出電容為主時有用,否則只會增加"自載效應"。
  2. 逐級加大尺寸。因為從公式中可以看到M1-M4的電阻出現次數依次遞增,所以因該讓他們的電阻值依次遞減才能得到最優解。
    • 局限: 在實際版圖中不易實現。
  3. 重新安排輸入。由于輸入信號不都在同時間到達,因此可以把關鍵信號放到靠近輸出端的晶體管上以提高速度。(關鍵信號:在所有輸入中最后到達穩定值的信號)
  4. 重組邏輯結構。比如,將6輸入OR門變為兩個三輸入NOR門加上一個二輸入與非門。原理是減小了扇入。

問題:為什么把關鍵信號放到靠近輸出端的晶體管上可以提高速度?
其實就是一個放電順序的問題:

上圖中,如果M1是最后才導通的那個,則直到M1導通前CL和C2都無法放電。而把M1放到最上面以后,C2和C1就可以先放電,節省了時間。

參考

https://www.cnblogs.com/lyc-seu/p/12832029.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/253856.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/253856.shtml
英文地址,請注明出處:http://en.pswp.cn/news/253856.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

繪制泰森多邊形

使用到的數據文件,內容如圖: 代碼: clc; clear; close all; % 導入需要的坐標數據成矩陣 a load(test.txt); x a(:,1); y a(:,2); x x;%獲取坐標的橫坐標 y y;%獲取坐標的縱坐標 %根據點 繪制泰森多邊形 voronoi(x,y); %設定x軸的邊界 x…

(八)限定某個目錄禁止解析php、限制user_agent和PHP相關配置

2019獨角獸企業重金招聘Python工程師標準>>> 限定某個目錄禁止解析php 對于使用php語言編寫的網站,有一些目錄是有需求上傳文件的。如果網站代碼有漏洞,讓黑客上傳了一個用PHP寫的木馬,由于網站可以執行PHP程序,最終會…

靜態時序分析——多周期、半周期和偽路徑

一、多周期 multicycle paths 在一些情況下,如下圖所示,兩個寄存器之間的組合電路傳輸的邏輯延時超過一個時鐘周期。在這樣的情況下,這個組合路徑被定義為多周期路徑(multicycle path)。盡管后一個寄存器會在每一個的…

微信頭像單張圖片上傳

后臺配置 public function upload_img($img){import(ORG.Tencent.Weixin);$wx new Weixin(get_app_config());$media_data$wx->getMedia($img);$path./Uploads/.uniqid()..jpg;if(!file_put_contents($path,$media_data)){$this->error(圖片上傳失敗);}return $path;}前…

u-boot nand flash read/write cmd

支援的命令函數說明1. nand info/nand device功能:顯示當前nand flash晶片資訊。函數調用關係如下(按先後順序):static void nand_print(struct nand_chip *nand) ;2. nand erase 功能:擦除指定塊上的數據。 函數調用關係如下(按先後順序)&am…

APP測試瞎話

APP測試 一、功能性 1、APP的安裝、卸載 2、APP中業務功能 二、性能測試 1、高、中、低端機上運行效果 2、APP安裝過程、卸載過程的耗時 3、APP運行時,手機的CPU、內存、耗電量、流量、FPS(畫面每…

網絡七層協議之物理層

我們以一個非常簡單的例子開始: 兩服務器通訊問題 如上圖,有兩臺服務器,分別是 Server 1 和 Server 2 。 我們先做一個假設:計算機網絡現在還沒有被發明出來, 作為計算機科學家的你,想在這兩臺服務器間傳遞…

靜態時序分析——On-chip Variation

OCV(on-chip variation)是指在同一個芯片上, 由于制造工藝和環境等原因導致芯片上各部分特征不能完全一樣,從而造成偏差,對時序分析造成影響。這些偏差對互聯線和cell的延時都是有影響的。 由于OCV對延時有影響,那么我…

Exception和RuntimeException的區別

1.Exception表示程序運行過程中可能出現的非正常狀態 RuntimeException表示虛擬機的通常操作中可能遇到的異常,是一種常見運行錯誤。 Java編譯器要求方法必須聲明拋出可能發生的費運行異常,但是并不要求必須聲明拋出未被捕獲的運行時異常, 即…

[轉載]IIS7報500.23錯誤的解決方法

原文出處: 原文作者:pizibaidu 原文鏈接:http://pizibaidu.blog.51cto.com/1361909/1794446 背景:今天公司終端上有一個功能打開異常,報500錯誤,我用Fiddler找到鏈接,然后在IE里打開&#xff0c…

關于用戶空間和內核空間

當一個任務(進程)執行系統調用而陷入內核代碼中執行時,我們就稱進程處于內核運行態(內核態)。在內核態下,CPU可執行任何指令。當進程在執行用戶自己的代碼時,則稱其處于用戶運行態(用…

kaggle中zillow比賽中模型融合的方法及其代碼

在機器學習這個領域,尤其是做多媒體(聲音、圖像、視頻)相關的機器學習方法研究,會涉及很多特征、分類模型(分類任務)的選擇。以聲音識別為例,常見的特征有MFCC、LPCC、spectrogram-like feature…

靜態時序分析——Timing borrow

Timing Borrow技術又稱為cycle stealing技術,主要是利用latch的電平敏感特性,通過有效電平獲取數據,通過無效電平保持被鎖存的數據,主要用于解決路徑時序不滿足電路要求的情況。 通過TimingBorrow可以對電路進行加速,當路徑延遲較…

homebrew 常用命令

安裝(需要 Ruby):ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/Go/install)" 搜索:brew search MySQL 查詢:brew info mysql 主要看具體的信息,比如目前的版本&#xff0c…

從Mysql某一表中隨機讀取n條數據的SQL查詢語句

若要在i ≤ R ≤ j 這個范圍得到一個隨機整數R ,需要用到表達式 FLOOR(i RAND() * (j – i 1))。例如, 若要在7 到 12 的范圍(包括7和12)內得到一個隨機整數, 可使用以下語句: SELECT FLOOR(7 (RAND() * 6)); 以上摘…

基于MTD的NAND驅動開發(二)

基于MTD的NAND驅動開發(二) 基于MTD的NAND驅動開發(三) http://blog.csdn.net/leibniz_zsu/article/details/4977853 http://blog.csdn.net/leibniz_zsu/article/details/4977869 四、基于MTD的NAND 驅動架構 1 、platform_device 和platform_driver 的定義和注冊 對于我們的…

靜態時序分析——Data to data check

setup和hold的檢查也有可能發生在任意兩個數據端口,其中不包括時鐘端口。 我們將其中一個端口(pin)設置為約束端口(constrainted pin),就像觸發器中的數據端口;將另一個一個端口(pin…

開源數據庫中間件-MyCa初探與分片實踐

如今隨著互聯網的發展,數據的量級也是撐指數的增長,從GB到TB到PB。對數據的各種操作也是愈加的困難,傳統的關系性數據庫已經無法滿足快速查詢與插入數據的需求。這個時候NoSQL的出現暫時解決了這一危機。它通過降低數據的安全性,減…

【JAVA設計模式】外觀模式(Facade Pattern)

一 定義 為子系統中的一組接口提供一個一致的界面。Facade模式定義了一個高層的接口,這個接口使得這一子系統更加easy使用。二 案例 一個子系統中擁有3個模塊。每一個模塊中都有3個方法。當中一個為client調用方法,其它兩個則為各子模塊間互相調用方法…

return的用處

#include "stdio.h" main() {int a,b1,c0;for(a1;a<5;a){ cca;}printf("%d",c);return ;printf("hello word"); } 輸出結果是10并沒有hello word&#xff1b;return將不會執行下面的語句。轉載于:https://www.cnblogs.com/doublekai/p/6148…