24小時聯系電話:18217114652、13661815404
中文
公司新聞
數字系統(tǒng)設計
數字系統(tǒng)設計
創(chuàng)建新數字系統(tǒng)的設計流程是業(yè)內眾所周知的流程。但是,初學者工程師可能會發(fā)現設計復雜的數字系統(tǒng)很困難,尤其是在涉及系統(tǒng)方法和面向團隊的組織時,簡單的臨時技術無效。本文將討論系統(tǒng)的數字系統(tǒng)設計,同時展示數字系統(tǒng)的基本概念,以簡化對技術感興趣的人的過程。
模擬與數字系統(tǒng)
首先,讓我們討論模擬信號和數字信號之間的區(qū)別,以便我們了解數字系統(tǒng)的優(yōu)勢,證明其在當今技術中的廣泛使用是合理的。
模擬信號
模擬信號的幅度值連續(xù)分布在電壓或電流范圍內。這意味著信號電平可以采用任何值。此外,時間分布也是連續(xù)的,因此在任何給定時間點都有信息。因此,模擬信號可以以非常直接的方式提供信息:例如,熱電偶的電壓值可以與溫度直接相關,無需進一步編碼。然而,模擬信號難以處理和計算。
圖 1:模擬信號
數字信號
另一方面,數字信號的幅度離散地分布在有限的值范圍內。在現代系統(tǒng)中,此幅度僅限于兩個級別,對應于邏輯 0 和 1。此外,時間是離散的,這意味著信息只能以最小時間間隔的整數倍變化,稱為時鐘。這允許通過每個時鐘僅進行一次測量來訪問信號中包含的所有信息。
圖 2:數字信號
數字信號的優(yōu)勢
從某種意義上說,數字信號也是模擬信號。不同之處在于信息的存儲方式。因為數字信號只有兩個電平,我們可以建立一個信息閾值:如果幅度高于閾值,則認為是 1,如果低于閾值,則解釋為 0。這允許應用布爾邏輯,這比處理模擬信息所需的微積分要容易得多。因此,使用數字信號可以簡化系統(tǒng)的硬件和計算過程。
此外,由于精確的幅度水平不再重要(僅與閾值進行比較),因此信號幾乎不受硬件退化的影響,例如外部噪聲、溫度、老化等。
因此,數字信號更容易設計,可以使用相同的硬件以不同的方式進行編程,更經濟、靈活、處理速度更快、更容易設計,并且可以縮小到非常小的集成電路,填充單個芯片數以百萬計的邏輯門。
信號兼容性
數字系統(tǒng)最重要的參數之一是要使用的信號的邏輯電平標準。這很重要,因為系統(tǒng)中的每個組件都應該相互兼容,以確保正常運行。業(yè)界主要有五種標準:5 V TTL、5 V CMOS、3.3 V LVTTL、2.5 V CMOS和1.8 V CMOS。
每個標準定義了定義信號邏輯值的電壓幅度。有兩種規(guī)格:輸入邏輯電平(VIL、VIH)和輸出邏輯電平(VOL、VOH)。在數字組件中,輸入電壓低于 VIL 時視為零,高于 VIH 時視為一。在輸出中也會發(fā)生同樣的情況,其中低于 VOL 的電壓被認為是零,高于 VOH 的被認為是 1。通常,VOH > VIH 和 VOL < VIL,以確保下一個組件正確解釋一個組件的輸出電壓。
為了理解兼容性,讓我們考慮下面的情況,其中 2.5V CMOS 電路與 5V TTL 電路級聯。2.5V CMOS電路的最小輸出1為VOH = 2.3 V,高于5V TTL電路的最小輸入1。邏輯零也是如此,CMOS 輸出低于 VOL = 0.2 V,TTL 輸入低于 VIL = 0.8 V。因此,組件在此配置中是兼容的。
圖 3:幾種標準的電壓等級
數字設計范式
數字系統(tǒng)遠沒有模擬系統(tǒng)那么復雜。然而,這并不意味著設計在現實生活中很容易。對于小型系統(tǒng),工程師和業(yè)余愛好者即使在沒有系統(tǒng)組織的情況下使用“動態(tài)”設計方法也可以獲得良好的結果。然而,對于大型系統(tǒng),尤其是涉及專業(yè)團隊的大型系統(tǒng),忽略良好實踐、分層設計技術以及系統(tǒng)規(guī)劃、文檔和溝通變得不切實際。
特設數字設計
Ad hoc設計通常是電路設計的初學者方法。它基本上是“動態(tài)設計”范式,其中問題在本地解決并在發(fā)現時隔離,而不考慮整個設備。盡管這種技術可以在簡單的電路中工作,但它無法管理復雜的系統(tǒng),因為針對孤立問題設計的解決方案通常無法系統(tǒng)地產生最佳行為。此外,這種范式很難應用于基于團隊的項目,因為模塊之間的通信和兼容性是不切實際的。
分層設計
分層設計包括首先觀察整個項目,然后將其劃分為子模塊。然后單獨設計每個子模塊,并將其視為“黑匣子”?,F在,每個問題都可以單獨解決,但是為了兼容性和效率,模塊之間的接口應該按照標準設計。
在基于團隊的設計中,每個模塊可以由不同的人或小組設計。在這個階段,通信是避免兼容性問題的基礎。此外,每個模塊的 I/O 應遵循先前建立的標準,這些標準可能因項目而異。
圖 4:分層設計框圖
Gajski-Kuhn 圖
Gajski-Kuhn Chart 或 Y-Chart 表示數字系統(tǒng)的硬件設計水平和觀點。它由五個層次(由圓圈表示)和三個視角(由箭頭表示)組成。每個圓圈描述一個抽象級別,每個箭頭描述一種查看電路的方式。抽象級別沿箭頭方向增加。
圖 5:Gajski-Kuhn 圖
在級別上下文中,電路設計可以采用兩種方法:自頂向下方法和自底向上方法。自上而下的設計從較高的抽象級別(系統(tǒng))到較低的級別(開關)。自下而上的方法則相反。
自上而下:這種方法從更高的抽象層次,系統(tǒng)圈開始?;旧希鼜南到y(tǒng)塊的定義開始,根據行為、結構和/或幾何形狀對其進行定義和描述。然后,從下一個抽象層將模塊劃分為子系統(tǒng),這些子系統(tǒng)是創(chuàng)建主模塊所必需的。該過程一直持續(xù)到設計到達較低級別的塊。這種方法提供了更全面的設計視圖,更容易保持模塊之間的一致性,并更容易專注于設計目標,這在主要塊中進行了描述。
圖 6:自上而下的方法
自下而上:另一方面,這種方法從設計的基本單元開始,即第一抽象層次的子模塊,即開關。然后從較低到較高的抽象級別執(zhí)行設計,最終到達主系統(tǒng)塊。這種方法更適用于可用于構建第一個塊的技術有限的情況,并且應首先設計系統(tǒng)的第一個塊以避免達到可用技術無法滿足的規(guī)格。
圖 7:自下而上的方法
混合方法:可能是業(yè)界最常用的方法。較低級別由可用的半導體技術定義,因此它們是使用自底向上的方法設計的。但同時,更高層次的抽象也是采用自頂向下的方法設計的。最后,兩個設計流程相遇,完成項目。
盡管存在三種不同的視角(行為、結構和幾何),但設計流程可以在此過程中在視角之間切換。例如,自頂向下的設計可以從系統(tǒng)級的行為視角開始,到達寄存器傳輸級時跳轉到結構視角。
數字系統(tǒng)設計步驟
問題定義
問題必須用一句話或幾句話來定義,讓團隊中的每個人都清楚項目的目標。例如:
“設計一個接受三個輸入并提供兩個輸出的邏輯端口:輸出 1 在輸入 1 和輸入 2 之間執(zhí)行 AND 運算,輸出 2 在輸入 1 和輸入 3 之間執(zhí)行 OR 運算。”
功能規(guī)格
使用邏輯語句創(chuàng)建描述系統(tǒng)行為的函數算法。在我們的簡單示例中:
OUT1 = IN1 和 IN2
OUT2 = IN1 或 IN3
框圖
使用塊符號來描述信號流,因此每個塊是整個系統(tǒng)的不同模塊,應單獨設計。方塊圖還指定了每個方塊之間的關系。
圖 8:示例數字系統(tǒng)的框圖
結構設計
現在應該使用可用的技術來設計和表示每個塊。例如,微電子電路可用于設計將直接在硅上制造的塊,并且在實現可編程門陣列 (PGA) 時可以使用硬件描述語言。為了簡化電路表示,中等規(guī)模集成 (MSI) 塊,例如多路復用器和編碼器。
模擬和測試
最后,可以對每個模塊和整個系統(tǒng)進行仿真以驗證設計。為此,市場上有多種電子設計自動化 (EDA) 程序。模擬后,可以制造和測試系統(tǒng)以進行實際驗證。