CMOS級邏輯電路實現綜述
CMOS邏輯電路,分兩部分,上拉部分,下拉部分。上拉部分由PMOS管電路構成,下拉部分由NMOS管電路組成,如下。上下拉,形成互補。
由前面的基礎可知,CMOS只能實現基本邏輯的非,比如或邏輯,與邏輯,如果不加反相器,CMOS只能實現或非,與非邏輯。原因就是上拉邏輯只能用PMOS實現,下拉邏輯只能由NMOS實現,而PMOS的導通需要輸入信號為0,NMOS導通需要輸入信號為1。
既然如此,我們在用CMOS實現邏輯電路時,一般可以照如下順序去做:
1. 可以先將其整體先加上一個非,作相應的邏輯轉化。
2. 上拉邏輯中各個PMOS,與操作為并聯,或操作為串聯。
3. 下拉邏輯中各個NMOS,與操作為串聯,或操作為并聯。
比如我們想從CMOS層去實現邏輯 OUT = D+A*(B+C) (減號“-”表示取反(非)操作,“+”表示或,*表示與)。
設計過程如下:
1. OUT = - ( -(D+A*(B+C)) )
2. OUT1 =-(D+A*(B+C))
3. OUT = -OUT1
對于OUT1 = -(D+A*(B+C)),正好是邏輯整體上帶了個非。
故對于上拉邏輯:
或操作為串聯,從而輸入B,C接到的PMOS之間為串聯。
與操作為并聯,故輸入A接到的PMOS跟B,C或邏輯之間為并聯。
或操作為串聯,故D與A*(B+C)的PMOS邏輯為串聯。
對于下拉邏輯與上拉邏輯正好相反:
或操作為并聯,從而輸入B,C接到的NMOS之間為并聯。
與操作為串聯,故輸入A接到的NMOS跟B,C或邏輯之間為串聯。
或操作為并聯,故D與A*(B+C)的NMOS邏輯為并聯。
從而得到OUT1 =-(D+A*(B+C)) 的CMOS實現如下:
OUT = -OUT1,故得最終答案如下:
當然,在MOS管級別還可以做一些優化,比如MOS管級別的邏輯優化,MOS管柵源共用,晶體管尺寸調整,重新安排各個輸入的上下順序等等,都可以在MOS管級別使得電路的時序與面積功耗等得到優化,但這不是我們的重點,一般對于全定制IC設計會從MOS管級開始考慮電路的實現。這里我們只是對其做一個了解。
我們今后的重點將會注重于門級以上的電路實現與優化,特別是到了Verilog描述,主要著重于數據流級,行為級描述。
-
CMOS
+關注
關注
58文章
5735瀏覽量
236089 -
邏輯電路
+關注
關注
13文章
494瀏覽量
42708
原文標題:CMOS級邏輯電路實現綜述
文章出處:【微信號:LF-FPGA,微信公眾號:小魚FPGA】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論