同步電路和異步電路的區別是什么?
同步電路:存儲電路中所有觸發器的時鐘輸入端都接同一個時鐘脈沖源,因而所有觸發器的狀態的變化都與所加的時鐘脈沖信號同步。
異步電路:電路沒有統一的時鐘,有些觸發器的時鐘輸入端與時鐘脈沖源相連,這有這些觸發器的狀態變化與時鐘脈沖同步,而其他的觸發器的狀態變化不與時鐘脈沖同步。
什么是"線與"邏輯,要實現它,在硬件特性上有什么具體要求?
將兩個門電路的輸出端并聯以實現與邏輯的功能成為線與。在硬件上,要用OC門來實現,同時在輸出端口加一個上拉電阻。由于不用OC門可能使灌電流過大,而燒壞邏輯門。
解釋setup和hold time violation,畫圖說明,并說明解決辦法?
Setup/hold time是測試芯片對輸入信號和時鐘信號之間的時間要求。建立時間是指觸發器的時鐘信號上升沿到來以前,數據穩定不變的時間。
輸入信號應提前時鐘上升沿(如上升沿有效)T時間到達芯片,這個T就是建立時間-Setup time。如不滿足setup time,這個數據就不能被這一時鐘打入觸發器,只有在下一個時鐘上升沿,數據才能被打入觸發器。
保持時間是指觸發器的時鐘信號上升沿到來以后,數據穩定不變的時間。如果holdtime不夠,數據同樣不能被打入觸發器。
建立時間(Setup Time)和保持時間(Hold time)。建立時間是指在時鐘邊沿前,數據信號需要保持不變的時間。
保持時間是指時鐘跳變邊沿后數據信號需要保持不變的時間。
如果數據信號在時鐘沿觸發前后持續的時間均超過建立和保持時間,那么超過量就分別被稱為建立時間裕量和保持時間裕量。
什么是競爭與冒險現象?怎樣判斷?如何消除?
在組合邏輯中,由于門的輸入信號通路中經過了不同的延時,導致到達該門的時間不一致叫競爭。
產生毛刺叫冒險。判斷方法:代數法、圖形法(是否有相切的卡諾圈)、表格法(真值表)。如果布爾式中有相反的信號則可能產生競爭和冒險現象。
冒險分為偏“1”冒險和偏“0”冒險。解決方法:一是添加布爾式的消去項;二是在芯片外部加電容;三是加入選通信號。
SRAM:靜態隨機存取存儲器(Static Random-Access Memory,SRAM)是隨機存取存儲器的一種。
SSRAM:SynchronousStatic Random Access Memory 的縮寫,即同步靜態隨機存取存儲器。
SDRAM:同步動態隨機存取內存(synchronousdynamic random-access memory,簡稱SDRAM)是有一個同步接口的動態隨機存取內存(DRAM)。
SSRAM的所有訪問都在時鐘的上升/下降沿啟動。地址、數據輸入和其它控制信號均與時鐘信號相關。這一點與異步SRAM不同,異步SRAM的訪問獨立于時鐘,數據輸入和輸出都由地址的變化控制。SDRAM:Synchronous DRAM同步動態隨機存儲器。
FPGA是可編程ASIC。
ASIC,專用集成電路,它是面向專門用途的電路,專門為一個用戶設計和制造的。根據一個用戶的特定要求,能以低研制成本,短、交貨周期供貨的全定制,半定制集成電路。
與門陣列等其它ASIC(ApplicationSpecific IC)相比,它們又具有設計開發周期短、設計制造成本低、開發工具先進、標準產品無需測試、質量穩定以及可實時在線檢驗等優點。
單片機上電后沒有運轉,首先要檢查什么?
(1)首先應該確認電源電壓是否正常。用電壓表測量接地引腳跟電源引腳之間的電壓,看是否是電源電壓,例如常用的5V。
(2)接下來就是檢查復位引腳電壓是否正常。分別測量按下復位按鈕和放開復位按鈕的電壓值,看是否正確。
(3)然后再檢查晶振是否起振了,一般用示波器來看晶振引腳的波形;經過上面幾點的檢查,一般即可排除故障了。
如果系統不穩定的話,有時是因為電源濾波不好導致的。在單片機的電源引腳跟地引腳之間接上一個0.1uF的電容會有所改善。如果電源沒有濾波電容的話,則需要再接一個更大濾波電容,例如220uF的。遇到系統不穩定時,就可以并上電容試試(越靠近芯片越好)。
什么是同步邏輯和異步邏輯?
同步邏輯是時鐘之間有固定的因果關系。異步邏輯是各時鐘之間沒有固定的因果關系。
你知道哪些常用邏輯電平?TTL與COMS電平可以直接互連嗎?
常用邏輯電平:12V,5V,3.3V。
TTL和CMOS不可以直接互連,由于TTL是在0.3-3.6V之間,而CMOS則是有在12V的有在5V的。CMOS輸出接到TTL是可以直接互連。TTL接到CMOS需要在輸出端口加一上拉電阻接到5V或者12V。
如何解決亞穩態?
亞穩態是指觸發器無法在某個規定時間段內達到一個可確認的狀態。當一個觸發器進入亞穩態時,既無法預測該單元的輸出電平,也無法預測何時輸出才能穩定在某個正確的電平上。
在亞穩態期間,觸發器輸出一些中間級電平,或者可能處于振蕩狀態,并且這種無用的輸出電平可以沿信號通道上的各個觸發器級聯式傳播下去。
解決方法主要有:
o 降低系統時鐘;
o 用反應更快的觸發器(FF),鎖存器(LATCH);
o 引入同步機制,防止亞穩態傳播;
o 改善時鐘質量,用邊沿變化快速的時鐘信號;
o 使用工藝好、時鐘周期裕量大的器件。
鎖存器、觸發器、寄存器三者的區別?
觸發器:能夠存儲一位二值信號的基本單元電路統稱為“觸發器”。
鎖存器:一位觸發器只能傳送或存儲一位數據,而在實際工作中往往希望一次傳送或存儲多位數據。為此可把多個觸發器的時鐘輸入端CP連接起來,用一個公共的控制信號來控制,而各個數據端口仍然是各處獨立地接收數據。這樣所構成的能一次傳送或存儲多位數據的電路就稱為“鎖存器”。
寄存器:在實際的數字系統中,通常把能夠用來存儲一組二進制代碼的同步時序邏輯電路稱為寄存器。由于觸發器內有記憶功能,因此利用觸發器可以方便地構成寄存器。由于一個觸發器能夠存儲一位二進制碼,所以把n個觸發器的時鐘端口連接起來就能構成一個存儲 n位二進制碼的寄存器。
區別:從寄存數據的角度來看,寄存器和鎖存器的功能是相同的,它們的區別在于寄存器是同步時鐘控制,而鎖存器是電位信號控制。
可見,寄存器和鎖存器具有不同的應用場合,取決于控制方式以及控制信號和數據信號之間的時間關系:若數據信號有效一定滯后于控制信號有效,則只能使用鎖存器;若數據信號提前于控制信號到達并且要求同步操作,則可用寄存器來存放數據。
IC設計中同步復位與異步復位的區別?
異步復位是不受時鐘影響的,在一個芯片系統初始化(或者說上電)的時候需要這么一個全局的信號來對整個芯片進行整體的復位,到一個初始的確定狀態。而同步復位需要在時鐘沿來臨的時候才會對整個系統進行復位。
多時域設計中,如何處理信號跨時域?
不同的時鐘域之間信號通信時需要進行同步處理,這樣可以防止新時鐘域中第一級觸發器的亞穩態信號對下級邏輯造成影響,其中對于單個控制信號可以用兩級同步器,如電平、邊沿檢測和脈沖,對多位信號可以用FIFO、雙口RAM、握手信號等。
跨時域的信號要經過同步器同步,防止亞穩態傳播。例如:時鐘域1中的一個信號,要送到時鐘域2,那么在這個信號送到時鐘域2之前,要先經過時鐘域2的同步器同步后,才能進入時鐘域2。
這個同步器就是兩級d觸發器,其時鐘為時鐘域2的時鐘。這樣做是怕時鐘域1中的這個信號,可能不滿足時鐘域2中觸發器的建立保持時間,而產生亞穩態,因為它們之間沒有必然關系,是異步的。
這樣做只能防止亞穩態傳播,但不能保證采進來的數據的正確性。所以通常只同步很少位數的信號。比如控制信號,或地址。當同步的是地址時,一般該地址應采用格雷碼,因為格雷碼每次只變一位,相當于每次只有一個同步器在起作用,這樣可以降低出錯概率,象異步FIFO的設計中,比較讀寫地址的大小時,就是用這種方法。
如果兩個時鐘域之間傳送大量的數據,可以用異步FIFO來解決問題。
我們可以在跨越ClockDomain時加上一個低電平使能的LockupLatch以確保Timing能正確無誤。
給了reg的setup、hold時間,求中間組合邏輯的delay范圍?
Setup/hold time 是測試芯片對輸入信號和時鐘信號之間的時間要求。建立時間是指觸發器的時鐘信號上升沿到來以前,數據穩定不變的時間。
輸入信號應提前時鐘上升沿(如上升沿有效)T時間到達芯片,這個T就是建立時間-Setup time.如不滿足setup time,這個數據就不能被這一時鐘打入觸發器,只有在下一個時鐘上升沿,數據才能被打入觸發器。
保持時間是指觸發器的時鐘信號上升沿到來以后,數據穩定不變的時間。時holdtime不夠,數據同樣不能被打入觸發器。即delay
時鐘周期為T,觸發器D1的建立時間最大為T1max,最小為T1min,組合邏輯電路最大延遲為T2max,最小為T2min。觸發器D2的建立時間T3和保持時間應滿足什么條件?
建立時間(setup time)是指在觸發器的時鐘信號上升沿到來以前,數據穩定不變的時間,如果建立時間不夠,數據將不能在這個時鐘上升沿被打入觸發器;保持時間(hold time)是指在觸發器的時鐘信號上升沿到來以后,數據穩定不變的時間,如果保持時間不夠,數據同樣不能被打入觸發器。
Tffpd:觸發器輸出的響應時間,也就是觸發器的輸出在clk時鐘上升沿到來之后多長的時間內發生變化并且穩定,也可以理解為觸發器的輸出延時。
Tcomb:觸發器的輸出經過組合邏輯所需要的時間,也就是題目中的組合邏輯延遲。Tsetup:建立時間Thold:保持時間Tclk:時鐘周期。
建立時間容限:相當于保護時間,這里要求建立時間容限大于等于0。保持時間容限:保持時間容限也要求大于等于0。
說說靜態、動態時序模擬的優缺點?
靜態時序分析是采用窮盡分析方法來提取出整個電路存在的所有時序路徑,計算信號在這些路徑上的傳播延時,檢查信號的建立和保持時間是否滿足時序要求,通過對最大路徑延時和最小路徑延時的分析,找出違背時序約束的錯誤。
它不需要輸入向量就能窮盡所有的路徑,且運行速度很快、占用內存較少,不僅可以對芯片設計 進行全面的時序功能檢查,而且還可利用時序分析的結果來優化設計,因此靜態時序分析已經越來越多地被用到數字集成電路設計的驗證中。
動態時序模擬就是通常的仿真,因為不可能產生完備的測試向量,覆蓋門級網表中的每一條路徑。因此在動態時序分析中,無法暴露一些路徑上可能存在的時序問題。
LATCH和DFF的概念和區別?
(1)概念
電平敏感的存儲器件稱為鎖存器;分高電平鎖存器和低電平鎖存器,用于不同時鐘間的同步。
有交叉耦合的門構成的雙穩態存儲器件稱為觸發器,分為上升沿觸發和下降沿觸發,可認為是兩個不同電平敏感的鎖存器串聯而成,前一個鎖存器決定了觸發器的建立時間,后一個鎖存器決定了觸發器的保持時間。
(2)區別
o latch由電平觸發,非同步控制。在使能信號有效時latch相當于通路,在使能信號無效時latch保持輸出狀態。DFF由時鐘沿觸發,同步控制。
o latch容易產生毛刺(glitch),DFF則不易產生毛刺。
o 如果使用門電路來搭建latch和DFF,則latch消耗的門資源比DFF要少,這是latch比DFF優越的地方。所以,在ASIC中使用 latch的集成度比DFF高,但在FPGA中正好相反,因為FPGA中沒有標準的latch單元,但有DFF單元,一個LATCH需要多個LE才能實現。
o latch將靜態時序分析變得極為復雜。
一般的設計規則是:在絕大多數設計中避免產生latch。它會讓您設計的時序完蛋,并且它的隱蔽性很強,非老手不能查出。latch最大的危害在于不能過濾毛刺。這對于下一級電路是極其危險的。所以,只要能用D觸發器的地方,就不用latch。
有些地方沒有時鐘,也只能用latch了。比如現在用一個clk接到latch的使能端(假設是高電平使能),這樣需要的setup時間,就是數據在時鐘的下降沿之前需要的時間,但是如果是一個DFF,那么setup時間就是在時鐘的上升沿需要的時間。
這就說明如果數據晚于控制信號的情況下,只能用 latch,這種情況就是,前面所提到的latch timing borrow。基本上相當于借了一個高電平時間。也就是說,latch借的時間也是有限的。
latch與register的區別,為什么現在多用register?行為級描述中latch如何產生的?
Latch(鎖存器)是電平觸發,Register(寄存器)是邊沿觸發,register在同一時鐘邊沿觸發下動作,符合同步電路的設計思想,而latch則屬于異步電路設計,往往會導致時序分析困難,不適當的應用latch則會大量浪費芯片資源。
什么是鎖相環(PLL)?鎖相環的工作原理是什么?
鎖相環是一種反饋電路,其作用是使得電路上的時鐘和某一外部時鐘的相位同步。PLL通過比較外部信號的相位和由壓控晶振(VCXO)的相位來實現同步的,在比較的過程中,鎖相環電路會不斷根據外部信號的相位來調整本地晶振的時鐘相位,直到兩個信號的相位同步。
在數據采集系統中,鎖相環是一種非常有用的同步技術,因為通過鎖相環,可以使得不同的數據采集板卡共享同一個采樣時鐘。
因此,所有板卡上各自的本地80MHz和20MHz時基的相位都是同步的,從而采樣時鐘也是同步的。因為每塊板卡的采樣時鐘都是同步的,所以都能嚴格地在同一時刻進行數據采集。
基本放大電路的種類及優缺點,廣泛采用差分結構的原因?
基本放大電路按其接法的不同可以分為共發射極放大電路、共基極放大電路和共集電極放大電路,簡稱共基、共射、共集放大電路。
共射放大電路既能放大電流又能放大電壓,輸入電阻在三種電路中居中,輸出電阻較大,頻帶較窄。常做為低頻電壓放大電路的單元電路。
共基放大電路只能放大電壓不能放大電流,輸入電阻小,電壓放大倍數和輸出電阻與共射放大電路相當,頻率特性是三種接法中最好的電路。常用于寬頻帶放大電路。
共集放大電路只能放大電流不能放大電壓,是三種接法中輸入電阻最大、輸出電阻最小的電路,并具有電壓跟隨的特點。常用于電壓放大電路的輸入級和輸出級,在功率放大電路中也常采用射極輸出的形式。
共集放大電路只能放大電流不能放大電壓,是三種接法中輸入電阻最大、輸出電阻最小的電路,并具有電壓跟隨的特點。常用于電壓放大電路的輸入級和輸出級,在功率放大電路中也常采用射極輸出的形式。
-
存儲器
+關注
關注
38文章
7492瀏覽量
163842 -
觸發器
+關注
關注
14文章
2000瀏覽量
61158 -
異步電路
+關注
關注
2文章
48瀏覽量
11103
原文標題:總結常見電路面試題,文末附PDF
文章出處:【微信號:單片機與嵌入式,微信公眾號:單片機與嵌入式】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論