數字IC設計筆試面試題總結(二)

2021-10-10 06:01:10 字數 2095 閱讀 8136

1、邊沿檢測(實現對訊號上公升沿或下降沿進行檢測)

//上公升沿檢測

`timescale 1ns/1ps

module edge_detect(

//system signals

input clk ,

input rst_n ,

input edge_signal ,

output pulse

);reg edge_reg0;

reg edge_reg1;

always @(posedge clk or negedge rst_n) begin

if (!rst_n) begin

edge_reg0 <= 1'b0;

edge_reg1 <= 1'b0;

endelse begin

edge_reg0 <= edge_signal;

edge_reg1 <= edge_reg0;

endendassign pulse = ((~edge_reg1)&edge_reg0)?1'b1:1'b0;

endmodule

2、幀頭檢測(在通訊中的幀同步中有應用)

題目描述:幀頭frame_head來脈衝同時data_in會來資料,連續三次的資料都是8'h33時就輸出乙個脈衝。

`timescale 1ns/1ps

module frame_detect (

//system signals

input clk ,

input rst_n ,

input frame_head ,

input [7:0]data_in ,

output pulse

);reg out;

reg [1:0] state;

reg pulse_f;

integer s0=0;

integer s1=1;

integer s2=2;

integer s3=3;

//outputs

always @ (state)

begin

case (state)

s0:pulse_f = 1'b0;

s1:pulse_f = 1'b0;

s2:pulse_f = 1'b0;

s3:pulse_f = 1'b1;

default:

pulse_f = pulse_f;

endcase

end//states

always @ (posedge clk or negedge rst_n)

if(!rst_n)begin

state <= s0;

endelse if(frame_head)begin

case (state)

s0:begin

if(data_in == 8'h33)

state <= s1;

else

state <= s0;

ends1:

begin

if(data_in == 8'h33)

state <= s2;

else

state <= s0;

ends2:

begin

if(data_in == 8'h33)

state <= s3;

else

state <= s0;

ends3:

begin

if(data_in == 8'h33)

state <= s3;

else

state <= s0;

enddefault:

begin

state <= state;

endendcase

endassign pulse = pulse_f;

endmodule

數字ic筆試面試 題目彙總

1 fpga資源 問你用的哪些fpga,你用的那款fpga的dsp片數,佔了多少資源,響應時間多少 2 專案相關 讓你畫專案的結構框圖,系統框架 3 濾波器設計 4 fpga裡面的slice,為什麼要用ram,資源優化,時序約束,建立時間,chipscope除錯時,取樣率的設定。5 axi協議,問u...

數字IC筆試題(6)

題 使用2 1mux設計inv and or nand nor。即取反,與,或,與非,非或 mux是能夠根據需要將其中任意一路選出來的電路,又稱資料選擇器。設計inv 使用mxu設計inv,需要將s1端接 0 將s0端接 1 設計and 使用mxu設計and,需要將s1端接a,將s0端接 0 設計o...

筆試面試題二

1 c字串是以 0 字元作為結束標誌的 char p abcde 0fghjik 0 printf d n strlen p 5 a b c d e char acnew 20 0 0 printf d n strlen acnew 2 和0 2 建構函式和虛析構函式 include stdafx....