ic測試工程師筆試題

學識都 人氣:1.92W

1.什麼是Setup 和Holdup時間?

ic測試工程師筆試題

建立時間(Setup Time)和保持時間(Hold time)。建立時間是指在時鐘邊沿前,數據信號需要保持不變的時間。保持時間是指時鐘跳變邊沿後數據信號需要保持不變的時間。如果不滿足建立和保持時間的話,那麼DFF將不能正確地採樣到數據,將會出現metastability的情況。如果數據信號在時鐘沿觸發前後持續的時間均超過建立和保持時間,那麼超過量就分別被稱爲建立時間裕量和保持時間裕量。

2什麼是競爭與冒險現象?怎樣判斷?如何消除?

在組合邏輯中,由於門的輸入信號通路中經過了不同的延時,導致到達該門的時間不一致叫競爭。產生毛刺叫冒險。如果布爾式中有相反的信號則可能產生競爭和冒險現象。解決方法:一是添加布爾式的消去項,二是在芯片外部加電容。

3 用D觸發器實現2倍分頻的邏輯電路?

Verilog描述:

module divide2( clk , clk_o, reset);

input clk , reset;

output clk_o; wire in;

reg out ;

always @ ( posedge clk or posedge reset)

if ( reset) out <= 0;

else out <= in;

assign in = ~out;

assign clk_o = out;

endmodule

4 什麼是"線與"邏輯,要實現它,在硬件特性上有什麼具體要求?

線與邏輯是兩個輸出信號相連可以實現與的功能。在硬件上,要用oc門來實現,由於不用oc門可能使灌電流過大,而燒壞邏輯門。 同時在輸出端口應加一個上拉電阻。

5 什麼是同步邏輯和異步邏輯?

同步邏輯是時鐘之間有固定的因果關係。異步邏輯是各時鐘之間沒有固定的因果關係。

6 請畫出微機接口電路中,典型的輸入設備與微機接口邏輯示意圖(數據接口、控制接口、所存器/緩衝器)。

7 你知道那些常用邏輯電平?TTL與COMS電平可以直接互連嗎?

12,5,3.3 TTL和CMOS不可以直接互連,由於TTL是在0.3-3.6V之間,而CMOS則是有在12V的有在5V的。CMOS輸出接到TTL是可以直接互連。TTL接到CMOS需要在輸出端口加一上拉電阻接到5V或者12V。

8 可編程邏輯器件在現代電子設計中越來越重要,請問:你所知道的可編程邏輯器件有哪些?

PAL,PLD,CPLD,FPGA。

9 試用VHDL或VERILOG、ABLE描述8位D觸發器邏輯。

module dff8(clk , reset, d, q);

input clk; input reset;

input [7:0] d;

output [7:0] q;

reg [7:0] q;

always @ (posedge clk or posedge reset)

if(reset) q <= 0;

else q <= d;

endmodule

10 設想你將設計完成一個電子電路方案。請簡述用EDA軟件(如PROTEL)進行設計(包 括原理圖和PCB圖)到調試出樣機的整個過程。在各環節應注意哪些問題? 電源的穩定上,電容的選取上,以及佈局的大小。

11 用邏輯門和cmos電路實現ab+cd

12 用一個二選一mux和一個inv實現異或

13 給了reg的setup,hold時間,求中間組合邏輯的delay範圍。

Delay < period - setup - hold

14 如何解決亞穩態

亞穩態是指觸發器無法在某個規定時間段內達到一個可確認的狀態。當一個觸發器進入亞穩態時,既無法預測該單元的輸出電平,也無法預測何時輸出才能穩定在某個正確的電平上。在這個穩定期間,觸發器輸出一些中間級電平,或者可能處於振盪狀態,並且這種無用的輸出電平可以沿信號通道上的各個觸發器級聯式傳播下去。

15 用verilog/vhdl寫一個fifo控制器 包括空,滿,半滿信號。

16 用verilog/vddl檢測stream中的特定字符串分狀態用狀態機寫。

17 用mos管搭出一個二輸入與非門。

18 集成電路前段設計流程,寫出相關的工具。

19 名詞IRQ,BIOS,USB,VHDL,SDR IRQ: Interrupt ReQuest BIOS: Basic Input Output System USB: Universal Serial Bus VHDL: VHIC Hardware Description Language SDR: Single Data Rate

20 unix 命令cp -r, rm,uname

21 用波形表示D觸發器的功能

22 寫異步D觸發器的

verilog module module dff8(clk , reset, d, q);

input clk;

input reset;

input d;

output q;

reg q;

always @ (posedge clk or posedge reset)

if(reset) q <= 0;

else q <= d;

endmodule

23 What is PC Chipset?

芯片組(Chipset)是主板的核心組成部分,按照在主板上的排列位置的'不同,通常分爲北橋芯片和南橋芯片。北橋芯片提供對CPU的類型和主頻、內存的類型和最大容量、ISA/PCI/AGP插槽、ECC糾錯等支持。南橋芯片則提供對KBC(鍵盤控制器)、RTC(實時時鐘控制器)、USB(通用串行總線)、Ultra DMA/33(66)EIDE數據傳輸方式和ACPI(高級能源管理)等的支持。其中北橋芯片起着主導性的作用,也稱爲主橋(Host Bridge)。  除了最通用的南北橋結構外,目前芯片組正向更高級的加速集線架構發展,Intel的8xx系列芯片組就是這類芯片組的代表,它將一些子系統如IDE接口、音效、MODEM和USB直接接入主芯片,能夠提供比PCI總線寬一倍的帶寬,達到了266MB/s。

24 用傳輸門和反向器搭一個邊沿觸發器

25 畫狀態機,接受1,2,5分錢的賣報機,每份報紙5分錢

1. setup time 和 hold time 不滿足情況下應該如何解決?

2. 什麼叫做亞穩態,如何解決?

3. Verilog中 => 和 = 有什麼區別?

4. 畫一個D觸發器的原理圖(門級),並且用verilog gate level表示出來;

5. 用最少的Mos管畫出一個與非門;

6. 寫一段finite state machine(主要考察coding style);

答:如果觸發器的setup time/hold time不滿足,這個數據就不能被這一時鐘打入觸發器,只有在下一個時鐘上升沿到來時,數據才能被打入觸發器。在同步系統中,如果觸發器的setup time/hold time不滿足,就可能產生亞穩態(Metastability),導致採樣錯誤。此時觸發器輸出端Q在有效時鐘沿之後比較長的一段時間處於不確定的狀態,在這段時間裏Q端毛刺、振盪、固定的某一電壓值,而不是等於數據輸入端D的值。這段之間成爲決斷時間(resolution time)。經過resolution time之後Q端將穩定到0或1上,但是究竟是0還是1,這是隨機的,與輸入沒有必然的關係。 只要系統中有異步元件,亞穩態就是無法避免的,因此設計的電路首先要減少亞穩態導致錯誤的發生,其次要使系統對產生的錯誤不敏感。前者需要同步來實現,而後者根據不同的設計應用有不同的處理辦法。 在IC設計中,如果setup time沒有滿足,只有重新綜合,重新約束計,如果hold time不滿足,那麼可以在post layout時候fix,也可以在綜合時候使用set_fix-_hold命令來修正 建立時間和保持時間要看在什麼階段出現問題了,如果在仿真階段則必須重新改寫代碼,在綜合階段則需要通過標準單元的選擇調整,如果綜合中沒有負的時隙,而在後端設計中出現問題,也可以通過調整佈局與佈線達到優化設計,並非象樓上說得,一定要從頭綜合。

同步復位與異步復位

異步復位是不受時鐘影響的,在一個芯片系統初始化(或者說上電)的時候需要這麼一個全局的信號來對整個芯片進行整體的復位,到一個初始的確定狀態。而同步復位需要在時鐘沿來臨的時候纔會對整個系統進行復位。請注意,如果芯片是有多個時鐘的系統,那麼如何保證不同時鐘域的電路能夠“同時”復位將會是一個重要的問題,此外,如果你的時鐘是一個低頻時鐘,那麼在這個系統(包括其他芯片)上電時如何保證能和其他芯片同時復位?硬件全局異步復位是必要的,請注意這裏加上了“全局”,這是因爲異步復位既然要對整個芯片“同時”復位,那麼佈線延時絕不能不考慮,使用FPGA設計時芯片的異步復位必須要走全局網絡。再提醒一點,芯片中最好不要出現多個異步復位。一個關鍵原因是對於FPGA而言,多個異步復位信號難以實現前面要求的“全局網絡”。

異步復位最大的優點是, 數據通路就可以不依賴於時鐘而確保清潔可控。然而, 異步復位也有其固有的缺陷。異步復位設計的DFT (可測性設計) 與STA (靜態時序分析) 的複雜性要高於同步復位設計; 但異步復位中最嚴重的問題是, 如果異步復位信號在觸發器時鐘有效沿附近“釋放”(復位信號從有效變爲無效) 的話, 可能會導致觸發器輸出的亞穩態。

IR壓降是指出現在集成電路中電源和地網絡上電壓下降或升高的一種現象。隨着半導體工藝的演進金屬互連線的寬度越來越窄,導致它的電阻值上升,所以在整個芯片範圍內將存在一定的IR壓降。IR壓降的大小決定於從電源PAD到所計算的邏輯門單元之間的等效電阻的大小SoC設計中的每一個邏輯門單元的電流都會對設計中的其它邏輯門單元造成不同程度的IR壓降。如果連接到金屬連線上的邏輯門單元同時有翻轉動作,那麼因此而導致的IR壓降將會很大。然而,設計中的某些部分的同時翻轉又是非常重要的,例如時鐘網絡和它所驅動的寄存器,在一個同步設計中它們必須同時翻轉。因此,一定程度的IR壓降是不可避免的。

IR壓降可能是局部或全局性的。當相鄰位置一定數量的邏輯門單元同時有邏輯翻轉動作時,就引起局部IR壓降現象,而電源網格某一特定部分的電阻值特別高時,例如R14遠遠超出預計時,也會導致局部IR壓降;當芯片某一區域內的邏輯動作導致其它區域的IR壓降時,稱之爲全局現象。

IR壓降問題的表現常常類似一些時序甚至可能是信號的完整性問題。如果芯片的全局IR壓降過高,則邏輯門就有功能故障,使芯片徹底失效,儘管邏輯仿真顯示設計是正確的。而局部IR壓降比較敏感,它只在一些特定的條件下才可能發生,例如所有的總線數據同步進行翻轉,因此芯片會間歇性的表現出一些功能故障。而IR壓降比較普遍的影響就是降低了芯片的速度。試驗表明,邏輯門單元上5%的IR壓降將使正常的門速度降低15%

總的說來,是電壓降的意思。規模越大的芯片的電流就越大,在電源上產生的壓降也越大。面積增大的芯片也會惡化電壓。芯片的速度又與電壓成相關性。幾個因數導致時序,抗噪等問題。

危害:

1。性能(performance)

由管子的Tdelay=c/u可知,電壓降低,門的開關速度越慢,性能越差。

2。功能(function)

實際上在極端的情況下甚至功能也會受影響的。在深亞微米下,如果Power/Ground network做的也很差,然後碰上了很不好的case,IR drop會很大,如果用的是high Vt的process,則DC noise margin就比較小了。這樣就有可能功能錯誤。

3。功耗(power)

如果沒有做詳細的IR drop分析,又想功能正確,那就只有留很大的margin了,本來1.2v可以跑的,也只能用1.5v了。但是這樣功耗也就上去了。

4。面積(area)

如果要在一定程度上限制IR drop,就要在chip裏面加上很多的decoupling capacitance.佔用了很多面積。

5。成本(cost)

功耗上去了,響應的散熱,封裝都成了問題,需要額外花費啦。而且面積變大,也是錢啊~~

所以,IR drop還是一個比較討厭的問題,需要小心對待。