修改LTspice中數(shù)字組件的操作
定制LTspice邏輯門和觸發(fā)器的設(shè)備參數(shù)可以幫助您更準(zhǔn)確地模擬這些組件。本文將介紹規(guī)范制定過程,并提供一些有用的提示。
本文引用地址:http://2s4d.com/article/202407/461043.htm本系列的第一篇文章討論了LTspice邏輯門組件的底層電氣結(jié)構(gòu),特別關(guān)注了未使用與邏輯低輸入的棘手問題。在本文中,我們將看到調(diào)整這些組件的某些設(shè)備參數(shù)如何使我們能夠定制它們的電氣行為。我們的重點(diǎn)將放在以下關(guān)鍵參數(shù)上:
邏輯電壓。
輸出阻抗。
圖1顯示了一個(gè)基本的雙輸入AND電路的低到高輸出轉(zhuǎn)換,其中所有這些參數(shù)都處于默認(rèn)狀態(tài)。
LTspice中具有默認(rèn)器件參數(shù)的雙輸入AND門的低到高輸出轉(zhuǎn)換。
圖1。具有默認(rèn)參數(shù)的LTspice AND門的低到高輸出轉(zhuǎn)換。
上圖為我們的討論提供了一個(gè)基線。在本文中,我們將研究修改AND門的不同參數(shù)如何改變我們的模擬結(jié)果。讓我們從電路的邏輯電平開始。
LTspice的數(shù)字元件默認(rèn)電壓方案為1V邏輯,閾值電壓(Ref)介于邏輯低和邏輯高之間。換句話說,默認(rèn)值是:
Vlow=0 V
V高=1 V
參考=0.5 V
要更改一個(gè)或多個(gè)電壓參數(shù),請(qǐng)右鍵單擊柵極符號(hào)。這將打開組件屬性編輯器。然后,將新的電壓規(guī)格添加到SpiceLine字段中。
例如,讓我們嘗試在SpiceLine字段中鍵入Ref=0.8(圖2)。這應(yīng)該會(huì)將閾值電壓從默認(rèn)值(0.5 V)更改為0.8 V。
在LTspice組件屬性編輯器中更改AND門的閾值電壓。
圖2:更改LTspice中的閾值電壓。
圖3顯示了更改后從低到高的輸出轉(zhuǎn)換。如光標(biāo)框所示,閾值電壓現(xiàn)在為0.8V。
AND柵極低至高輸出轉(zhuǎn)換,閾值電壓設(shè)置為0.8V。
圖3。閾值電壓設(shè)置為0.8V時(shí),從低到高的輸出轉(zhuǎn)換。
因?yàn)槲覀儧]有為Vhigh或Vlow指定任何值,所以當(dāng)我們運(yùn)行上述模擬時(shí),它們?nèi)匀皇悄J(rèn)值。讓我們改變這一點(diǎn)。我們將為該電路提供0.2V的邏輯低電壓和2.5V的邏輯高電壓。
如圖4所示,這些電壓以與閾值電壓完全相同的方式添加到LTspice中。
調(diào)整AND門的邏輯低電壓和邏輯高電壓。
圖4。調(diào)整AND門的邏輯低電壓和邏輯高電壓。
圖5顯示了使用新的Vhigh、Vlow和Ref值從低到高的輸出轉(zhuǎn)換。
LTspice AND門的低到高輸出轉(zhuǎn)換,具有為邏輯低、邏輯高和閾值電壓指定的自定義值。
圖5。在SpiceLine字段中輸入了Vhigh=2.5、Vlow=0.2和Ref=0.8的示例AND門的低到高輸出轉(zhuǎn)換。
我們現(xiàn)在已經(jīng)看到了為以下對(duì)象指定自定義值時(shí)電路的行為:
所有三個(gè)電壓參數(shù)(圖5)。
三個(gè)電壓參數(shù)都沒有(圖1)。
只有閾值電壓(圖3)。
但是,如果只有邏輯高電壓和邏輯低電壓而不是閾值電壓具有自定義值,會(huì)發(fā)生什么?
根據(jù)LTspice文檔,邏輯門的輸入閾值默認(rèn)為(Vlow+Vhigh)/2。如果邏輯低電壓和邏輯高電壓仍然處于各自的默認(rèn)值0 V和1 V,那么我們將得到圖1中看到的0.5 V閾值電壓。然而,對(duì)于我們上面選擇的Vlow和Vhigh值,刪除Ref規(guī)范后,我們得到了以下閾值電壓:
圖6中的模擬結(jié)果證實(shí)了這一點(diǎn)。
當(dāng)未指定參考值時(shí),AND門的閾值電壓默認(rèn)為邏輯低電壓和邏輯高電壓之間的一半。
圖6。刪除Ref規(guī)范后,閾值電壓默認(rèn)為邏輯低電壓和邏輯高電壓之間的一半。
接下來,讓我們考慮電路的轉(zhuǎn)換時(shí)間。
過渡時(shí)間
默認(rèn)情況下,LTspice中數(shù)字組件的下降時(shí)間(Tfall)等于其上升時(shí)間(Trise)。如果——通常情況下——你想讓上升和下降時(shí)間相同,你只需要指定Trise。Trise的默認(rèn)值為0,因此您可能確實(shí)希望至少指定一個(gè)上升時(shí)間。如果你不這樣做,你將有一個(gè)零上升時(shí)間和零下降時(shí)間(Tfall=Trise=0),這將使輸出變化的過渡時(shí)間短得不切實(shí)際。
圖7顯示了我們?cè)趫D5中使用的AND門設(shè)置的放大輸出轉(zhuǎn)換。為邏輯高、邏輯低和閾值電壓指定值,但不指定上升或下降時(shí)間。
AND門低至高輸出轉(zhuǎn)換,默認(rèn)上升時(shí)間。
圖7。從低到高AND門轉(zhuǎn)換的默認(rèn)上升時(shí)間。
我之前說過,默認(rèn)情況下,上升時(shí)間為零。然而,圖7顯示,我們的上升時(shí)間為147ns——相當(dāng)短,但絕對(duì)不是零。這是因?yàn)樗艿侥M時(shí)間步長(zhǎng)的限制。如果我右鍵單擊模擬命令并將100p插入最大時(shí)間步長(zhǎng)字段,則上升時(shí)間將減少到時(shí)間步長(zhǎng)值(圖8)。
從低到高的輸出轉(zhuǎn)換,具有默認(rèn)的上升時(shí)間和100 ps的模擬時(shí)間步長(zhǎng)。
圖8。從低到高的輸出轉(zhuǎn)換,默認(rèn)上升時(shí)間和模擬時(shí)間步長(zhǎng)設(shè)置為100 ps。
讓我們將上升時(shí)間設(shè)置為50μs。如圖9所示,該過程與我們輸入電壓參數(shù)的方式相同。
在LTspice的組件屬性編輯器中設(shè)置上升時(shí)間。
圖9。在組件屬性編輯器中設(shè)置上升時(shí)間。
圖10顯示了新上升時(shí)間的低到高輸出過渡。
從低到高的AND門轉(zhuǎn)換,具有自定義上升時(shí)間。
圖10。從低到高的轉(zhuǎn)變,上升時(shí)間設(shè)置為50μs。
在數(shù)字邏輯電路中,上升和下降時(shí)間通常被定義為電壓完成80%的完全轉(zhuǎn)變所需的時(shí)間。然而,LTspice將這些閘門的上升和下降時(shí)間定義為過渡的100%。理論上,圖10應(yīng)顯示電壓上升2.5V。
在實(shí)踐中,我們可以看到,電壓在50μs后僅上升到2.452V,誤差為1.9%。這種變化可能是由于LTspice收斂設(shè)置造成的,該設(shè)置控制模擬器何時(shí)決定產(chǎn)生的電壓和電流足夠接近。更改收斂設(shè)置超出了本文的范圍。
默認(rèn)輸出阻抗為1Ω。對(duì)于通用數(shù)字邏輯來說,這相當(dāng)?shù)汀F(xiàn)實(shí)的選擇是10到80Ω之間。當(dāng)數(shù)字輸出連接到高阻抗、低電容負(fù)載(如典型的數(shù)字輸入)時(shí),這種差異并不重要。
有時(shí),更高的值可以改善模擬。例如,如果你想為數(shù)字設(shè)備必須提供或吸收大量電流的電路產(chǎn)生精確的模擬波形,那么1Ω輸出阻抗的模擬可能會(huì)產(chǎn)生誤導(dǎo)。
根據(jù)LTspice文檔,您可以使用Rout參數(shù)指定數(shù)字元件的輸出阻抗。然而,在我使用AND門和緩沖門進(jìn)行的實(shí)驗(yàn)中,模擬結(jié)果與文檔中提供的Rout描述不一致。如果你需要增加數(shù)字元件的輸出阻抗,我建議添加一個(gè)外部電阻器,然后檢查你的結(jié)果以確保它們有意義。
下一篇
在本文中,我們討論了如何通過定制各種重要參數(shù)來改進(jìn)包括數(shù)字組件的模擬。在下一篇文章中,我們將把新知識(shí)應(yīng)用于在LTspice中創(chuàng)建并行負(fù)載移位寄存器的任務(wù)。
評(píng)論