大疆2019校招FPGA筆試總結

1.對於同步fifo,每100個cycle能夠寫入80個數據,每10個cycle能夠讀出8個數據,fifo的深度至少爲?正則表達式

寫時鐘頻率 w_clk,
讀時鐘頻率 r_clk,
寫時鐘週期裏,每B個時鐘週期會有A個數據寫入FIFO
讀時鐘週期裏,每Y個時鐘週期會有X個數據讀出FIFO
則,FIFO的最小深度是?

計算公式以下:

fifo_depth = burst_length - burst_length * X/Y * r_clk/w_clk

例舉說明:
若是100個寫時鐘週期能夠寫入80個數據,10個讀時鐘能夠讀出8個數據。令wclk=rclk ,考慮背靠背(20個clk不發數據+80clk發數據+80clk發數據+20個clk不發數據的200個clk)代入公式可計算FIFO的深度
fifo_depth = 160-160X(80%)=160-128= 32

拓展:
若是令wclk=200mhz,改成100個wclk裏寫入40個,rclk=100mhz,10個rclk裏讀出8個。那麼fifo深度爲48 計算以下fifo_depth
=80-80X(80%)X(100/200)=80-32=48

2.若是隻使用2選1mux完成異或邏輯,至少須要幾個mux?api

一開始想到的答案以下,須要3個,未詳加驗證:異步

後來經人指正發現確實不太對,糾正爲至少須要兩個,以下圖:函數

 

3.在對信號採樣過程以前抗混濾波,其做用是什麼?它選用何種濾波器?其截止頻率如何肯定?工具

根據「奈奎斯特採樣定律」:在對模擬信號進行離散化時,採樣頻率f2至少應2倍於被分析的信號的最高頻率f1,即:f2≥2 f1;不然可能出現因採樣頻率不夠高,模擬信號中的高頻信號摺疊到低頻段,出現虛假頻率成分的現象
但工程測量中採樣頻率不可能無限高也不須要無限高,由於咱們通常只關心必定頻率範圍內的信號成份.
爲解決頻率混疊,在對模擬信號進行離散化採集前,採用低通濾波器濾除高於1
/2採樣頻率的頻率成份.實際儀器設計中,這個低通濾波器的截止頻率(fc) 爲: 截止頻率(fc)= 採樣頻率(fz) / 2.56

4.線與邏輯優化

線與邏輯是兩個輸出信號相連能夠實現「與」的功能,能夠用OC或OD門來實現,須要在輸出端加一個上拉電阻spa

5.將二輸入的與非門當非門使用時,另外一端的接法應該是設計

二輸入與非門的真值表以下:       非門的真值表以下:code

   

假設如今A端爲非門的輸入,F爲輸出。A=0時,B端任意高低電平,F都爲1;A=1時,B只有等於1,即接高電平,F纔等於1。blog

因此,最終接法以下:(另外一端B接高電平

6.屬於高速串行接口的是

  PCIE,USB,SPI,RapidIO;(abcd)

7.關於芯片啓動時初始化代碼在調到main函數以前會執行的操做

8.Verilog HDL中哪些結構是不可綜合的

 (1)全部綜合工具都支持的結構:always,assign,begin,end,case,wire,tri,aupply0,supply1,reg,integer,default,for,function,and,nand,or,nor,xor,xnor,buf,not,bufif0,bufif1,notif0,notif1,if,inout,input,instantitation,module,negedge,posedge,operators,output,parameter。
    (2)全部綜合工具都不支持的結構:time,defparam,$finish,fork,join,initial,delays,UDP,wait。
    (3)有些工具支持有些工具不支持的結構:casex,casez,wand,triand,wor,trior,real,disable,forever,arrays,memories,repeat,task,while。
 

9.關於時序設計和異步設計的描述

10.代碼覆蓋率

 包括語句覆蓋,斷定覆蓋,條件覆蓋,路徑覆蓋;

11.面積和速度優化

 面積優化:資源共享,邏輯複製,串行化;

 速度優化:流水線,關鍵路徑法,寄存器配平;

12.關於正則表達式中的計數符和通用字符集進行搜索匹配

  

13.時序檢查中對異步復位電路的時序分析叫作()和()?

  這個題作的讓人有點懵,我知道異步復位電路通常須要作異步復位、同步釋放處理,但不知道這裏問的啥意思。

   這個經指點,應該是恢復時間檢查移除時間檢查

後面能記起來的就是問了一個關於FPGA內部資源包括哪些及其做用,一個通關序列發生器畫Moore狀態機,還有一個關於系統最大頻率計算的。

相關文章
相關標籤/搜索