(轉)FPGA工程師面試試題 集錦 (第三篇)

這段時間去面試了幾家公司,發現比較大的公司相對於重視基礎問題。這裏邊又有幾個問題特別的突出。他們是:同步時鐘設計、亞穩態、異步FIFO。可以說,這些個問題要是弄清楚了,就至少滿足了技術方面1/3的要求,另外的2/3是什麼,我就說不清楚了。又有人發了競爭冒險毛刺的問題,不過,對於採用同步設計方法的系統,這些問題一般不會遇到。下面就談談我對這些問題的看法,要是你覺得看這些東西覺得類似一堆狗屎,那麼恭喜你,你面試成功的機會增加了1/3;要是你你覺得阿,什麼樣的牛人拉了一堆牛屎,那麼不好意思,還是再去補補課把。這裏推薦一本《數字設計——原理和實踐》(John F.Wakerly)的書,仔細看一遍吧。

同步時鐘設計 簡單說就是一個系統中(或系統中的一部分)都採用同一個時鐘觸發。系統中的(D)觸發器全部都連接到一個時鐘,而且只控制觸發器的同步端(輸入,同步置位,同步復位)。這樣的系統是相對於異步系統而言的,異步系統並不是不同的觸發器時鐘端連接到不同的時鐘信號的系統(一般的這樣叫做跨時鐘系統,是相對幾個較小的同步系統的組合),而是更本沒有了時鐘的概念,依靠和觸發器構造一樣的反饋電路組成。相對於異步系統,同步系統更好設計(異步設計則象一個魔術,類似於彙編和高級語言的關係),更容易進行時序分析(爲什麼要用D觸發器而不用D鎖存器)——在這裏組合邏輯的競爭冒險毛刺問題都不存在了。應該說,同步系統最大的問題在於時鐘的偏斜(skew)。同步時鐘系統也存在一些涉及的技巧,這些技巧一般圍繞着降低關鍵路徑的延時和時間和空間的平衡。這些都是平衡的藝術(瞭解了基本的部件之後,剩下的工作就是一個字"平衡"),這裏邊的方法就太具體,而且本人也知道得不多,不敢亂說了。不過,只要你用過一種方法,就可以體會到其中的精神了。

亞穩態 這是跨時鐘設計中最基礎的一個問題(宏觀的問題是FIFO),按照我的觀察,上論壇問問題多的一般不明白這個,請一定要注意了。 什麼是亞穩態?數字電路中的簡單雙穩態電路就是兩個反相器首尾相連組成(加一些控制邏輯變成了鎖存器,觸發器),然而並不像名字顯示的,這種電路其實還有第三種半穩定態——就是當兩個反相器都處於中間值得情況——這稱之爲亞穩態。我們知道反相器在非邏輯值範圍的反饋係數是相當大的,一旦因爲干擾或者噪音離開了這個中心點,就會很快地進入邏輯值範圍(穩態)。數學分析,從亞穩態進入穩態,正如放射元素的衰變,是一個指數的規律(爲什麼是指數的規律?你要是想不明白,說明你還沒有搞明白亞穩態)。那麼,亞穩態的危害到底是什麼呢?消耗功率;),其實不是(雖然亞穩態消耗很大的功率),亞穩態的問題在於其電平並不處於有效邏輯電平範圍內,而且在變化。這就導致與其相連其他數字部件將其作出不同的判斷(注意,不同),有的作爲'1',有的作爲'0',有的也進入了亞穩態,數字部件就會邏輯混亂。那麼究竟如何避免(或者減小)亞穩態的危險呢?注意到亞穩態的觸發器繼續停留在亞穩態的機率按照指數減少,那麼辦法就是等——等足夠長的時間,直到這個機率變得小的實際上不會發生。到底需要有多長呢?有的廠商有一個數據,有的沒有,按照普通的做法,至少等一個時鐘週期——這也就是所謂的異步數據要用兩個觸發器打一下。這一段有點糊塗,不容易說明白,你看了要是覺得雲裏霧裏,不知所云,那們你只有找一本書學習了;要是覺得作者表達不清,那麼恭喜你,面試通過了的機率增加了。關於這個問題有很多糊塗的認識,要是你的主考官和你爭論,你就順着他的意思,畢竟沒有人想找一個管教不了的手下。

異步FIFO 異步FIFO是跨時鐘域設計方法的集中體現,體現了很多的方法。不過,其中最重要的有兩點,一個就是亞穩態,一個就是和亞穩態類似但不相同的——多個控制/狀態信號的跨時鐘傳遞。具體地說,就是當你把一組信號傳遞到另外一個時鐘域的話,這一組信號可能因爲延遲不同,這樣到達新時鐘域之後,得到的數據相差一個老時鐘域的時鐘週期。興好,對於FIFO,需要傳遞的是一個計數器,這個計數器可以編碼成格雷碼(gray code),這樣的編碼每次只變化一個位,正好解決了上面的問題(要是沒有畫過圖,最好畫一個圖看一下)。真不清楚這是怎麼發明的!注意,這裏其實還對格雷碼的相對延遲和相關的時鐘週期有一個要求。這就是異步FIFO中最關鍵的一點,至於指針如何控制,稍微考慮一下都很容易清楚。需要注意的事,這些東西不是用嘴能說清楚的,最好畫一個示意圖,不要因爲沒有說清楚,讓主考官覺得你沒有清楚。

當然,除此之外還有很多很多的東西。比如組合邏輯的設計技巧,俺就沒有研究。比如高速佈線信號完整性問題,俺也不敢多說。至於整個系統的設計思想,更不敢妄語。不過如果只要你有一個問題了解到了相當的深度,相信你很容易搞清楚其他問題。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章