1.名詞解釋:
fpga:現場可程式設計門陣列,一般工藝sram(易失性),所以要外掛程式配置晶元。
cpld:複雜可程式設計邏輯器件,一般工藝flash(不易失)。
asic:專用積體電路
soc:片上系統
sopc:片上可程式設計系統
2.verilog語法類:
①verilog兩大資料型別:一類是線網型別,另一類是暫存器型別。
線網型別表示硬體電路元件之間實際存在的物理連線,有很多種:wire、tri、wor等等,當然日常使用wire最多,其他的都沒遇到過。
暫存器型別表示乙個抽象的資料儲存單元,只能在initial或always內部被賦值,並且變數的值將從一條賦值語句保持到下一條賦值語句。有5種:reg、time(64位無符號的時間變數)、integer(32位帶符號的整數型變數)、real/realtime(64位帶符號的實數型變數)。reg用的最多。
②verilog建模方式:結構化描述方式、資料流描述方式、行為描述方式、混合描述方式。
結構描述是指通過呼叫邏輯原件,描述它們之間的連線來建立邏輯電路的verilog hdl模型。這裡的邏輯元件包括內建邏輯門、自主研發的已有模組、商業ip模組。
資料流描述是指根據訊號之間的邏輯關係,採用持續賦值語句描述邏輯電路的方式。通過觀察是否使用assign賦值語句可以判斷是否有資料流描述。
行為描述是指只注重實現的演算法,不關心具體 的硬體實現細節。這與c語言程式設計非常類似。通 過觀察是否使用initial 或always語句塊可以 判斷是否有行為描述。
混合描述是指以上幾種描述方法都存在的一種 描述方式。具體在乙個工程中,不可能只是用 單獨哪一種描述方式,一般都是各種描述方式 的混合。
3.vhdl相對於verilog不能描述的層級?
網上有段話說的是:verilog在其門級描述的底層,即電晶體開關級的描述方面比vhdl更強一些,所以即使使用vhdl的設計環境,在底層實質上也會由verilog描述的器件庫所支援。
verilog較為適合系統級、演算法級、rtl級、門級、開關級的設計,而對於特大型(千萬門級以上)的系統設計,則vhdl更為適合。(vhdl比較嚴謹,而verilog可以花式編碼)
所以,vhdl不能描述開關級。
4.阻塞與非阻塞的區別:
對於**:
1在always語句內部過程賦值語句有兩種,阻塞賦值語句與非阻塞賦值語句。//blocking;
2begin
3 b =a;
4 c = b + 1;5
end6
//non-blocking;
7begin
8 b <=a;
9 c <= b + 1;10
end
兩者主要區別是完成賦值操作的時間不同,阻塞賦值語句的賦值操作是立即執行的,即執行後一句的時候,前一句的賦值已經完成;而非阻塞賦值語句的賦值操作到結束順序語句塊時才完成賦值操作,即賦值操作完成後,語句塊的執行也就結束了。即阻塞是序列執行,非阻塞是並行執行的。對於上述**,阻塞賦值中相當於c = a + 1;非阻塞賦值中b先前的值被a替代,但c的值是b先前值加1。
5.亞穩態是什麼怎麼解決亞穩態?
另一篇文章已經闡述。
6.競爭冒險是什麼,怎麼解決競爭冒險?
另一篇文章已經闡述。
7.狀態機。
8.你使用的器件名稱含義?
以上。
FPGA筆試題集錦(血的教訓)
1.名詞解釋 fpga 現場可程式設計門陣列,一般工藝sram 易失性 所以要外掛程式配置晶元。cpld 複雜可程式設計邏輯器件,一般工藝flash 不易失 asic 專用積體電路 soc 片上系統 sopc 片上可程式設計系統 2.verilog語法類 verilog兩大資料型別 一類是線網型別,...
筆試題集錦
第一部分 必做 計算機基礎類 所有的選擇題都是多項選擇 1 假設進棧次序是e1,e2,e3,e4,那可能的出棧次序是 a e2,e4,e3,e1 b e2,e3,e4,e1 c e3,e2,e4,e1 d e1,e2,e4,e3 2 表示式x a b c d e的字尾表示形式可以是 a xab cd...
C C 筆試題集錦
1.求下面函式的返回值 微軟 int func x int countx 0 while x countx x x x 1 return countx 假定x 9999。答案 8 思路 將x轉化為2進製,看含有的1的個數。2.什麼是 引用 申明和使用 引用 要注意哪些問題?答 引用就是某個目標變數的...