色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

利用同步fifo實現對輸入序列的檢測

我快閉嘴 ? 來源:達爾聞說 ? 作者:達爾聞說 ? 2022-09-14 09:46 ? 次閱讀

今天繼續為大家解析聯發科數字IC設計崗的筆試題。

16、【簡答題】請用Verilog寫出以下邏輯

Interface signals如下:

input clk_ck;

input rst_b(async reset);

input req_in;

output req_in_ack;

input [31:0] data_in;

output data_out_vld;

output [31:0] data_out;

模塊功能需求如下:

1)模塊名為:filter_data_store

2)當req_inreq_in_ack都為高時,說明本模塊有能力接收data_in的數據;

3)在data_in的數據中找到特殊字符32hA1B9_0000,特殊字符前的數據全部丟棄,特殊字符后的資料全部收下來;

4)當sync_fifo為非空的時候,將數據讀出放到data_out上,并用data_out_vld指示數據的有效性。(15分)

解析:本題目主要考察了利用同步fifo實現對輸入序列的檢測

本題是一道關于同步fifo應用的題目,遇到這種類型的題目首先要根據題目中的要求逐條分析,然后依次在草稿紙上畫出大致的模塊框圖、波形圖,再編寫RTL代碼。

首先根據Interface signals需求1攜帶的信息,繪制出的模塊框圖如下所示:

15e0afda-335d-11ed-ba43-dac502259ad0.png

然后根據需求2改進模塊框圖如下:

15eb57dc-335d-11ed-ba43-dac502259ad0.png

然后繪制波形圖如下所示:

160e4c88-335d-11ed-ba43-dac502259ad0.png

filter_data_store模塊的HDL代碼如下所示:

//------------------

01modulefilter_data_store(

02inputwireclk_ck,

03inputwirerst_b,

04inputwirereq_in,

05inputwire[31:0]data_in,

06

07outputregreq_in_ack,

08outputwire[31:0]data_out,

09outputregdata_out_vld

10);

11

12regdata_start;

13regdata_start_reg;

14wire[31:0]dout;

15wirefull;

16wireempty;

17

18always@(posedgeclk_ck ornegedgerst_b)

19if(!rst_b)

20req_in_ack <=1'b0;

21elseif(full ==1'b0)

22req_in_ack <=1'b1;

23elseif(empty ==1'b1)

24req_in_ack <=1'b0;

25

26always@(posedgeclk_ck ornegedgerst_b)

27if(!rst_b)

28data_start <=1'b0;

29elseif(req_in ==1'b1&&req_in_ack ==1'b1&&data_in ==32'hA1B9_0000)

30data_start <=1'b1;

31elseif(req_in ==1'b0)

32data_start <=1'b0;

33

34always@(posedgeclk_ck ornegedgerst_b)

35if(!rst_b)

36data_start_reg <=1'b0;

37else

38data_start_reg <=data_start;

39

40//-------sync_fifo_inst-------

41sync_fifo sync_fifo_inst(

42.clk_ck(clk_ck),//input clk_ck

43.rst_b (rst_b),//inputrst_b

44.wr_en (data_start),//inputwr_en

45.din (data_in),//input [31:0] din

46.rd_en (~empty),//input rd_en

47

48.dout (dout),//output [31:0] dout

49.full (full),//output full

50.empty (empty)//output empty

51);

52

53assigndata_out =dout;

54

55always@(posedgeclk_ck ornegedgerst_b)

56if(!rst_b)

57data_out_vld <=1'b0;

58elseif(data_start ==1'b0&&data_start_reg ==1'b1)

59data_out_vld <=1'b0;

60elseif(data_start_reg ==1'b1)

61data_out_vld <=1'b1;

62

63endmodule

//----------------還需要一個同步fifo模塊,如果有時間建議自己用邏輯手寫一個同步fifo。同步fifo模塊的HDL代碼如下所示://----------------01modulesync_fifo(02inputwireclk_ck,03inputwirerst_b,04inputwirewr_en,05inputwire[31:0]din,06inputwirerd_en,0708outputwire[31:0]dout,09outputwirefull,10outputwireempty11);1213reg[4:0]wr_cnt;14reg[4:0]rd_cnt;15reg[31:0]mem [15:0];16reg[31:0]dout_r;1718wire[3:0]wr_p;19wire[3:0]rd_p;2021assignwr_p =wr_cnt[3:0];22assignrd_p =rd_cnt[3:0];23assigndout =dout_r;24assignfull=(wr_cnt[4]!=rd_cnt[4]&&wr_p ==rd_p)?1'b1:1'b0;25assignempty =(wr_cnt ==rd_cnt)?1'b1:1'b0;2627always@(posedgeclk_ck ornegedgerst_b)28if(!rst_b)29begin30wr_cnt <=5'd0;31rd_cnt <=5'd0;32end33else34begin35if(!full &&wr_en)36begin37 mem[wr_p]<=din;38 wr_cnt <=wr_cnt +1'b1;39end40if(!empty &&rd_en)41begin42dout_r <=mem[rd_p];43rd_cnt <=rd_cnt +1'b1;44end45end4647endmodule//------------------Testbench如下所示:

//------------------

01moduletb_filter_data_store();0203regclk_ck;04regrst_b;05regreq_in;06reg[31:0]data_in;0708wirereq_in_ack;09wire[31:0]data_out;10wiredata_out_vld;1112//初始化系統時鐘、全局復位13initialbegin14clk_ck =1'b1;15rst_b <=1'b0;16req_in <=1'b0;17data_in <=32'h0000_0000;18#2019rst_b <=1'b1;20@(posedgeclk_ck)21req_in <=1'b1;22data_in <=32'h0000_0001;23@(posedgeclk_ck)24data_in <=32'h0000_0002;25@(posedgeclk_ck)26data_in <=32'h0000_0003;27@(posedgeclk_ck)28data_in <=32'h0000_0004;29@(posedgeclk_ck)30data_in <=32'h0000_0005;31@(posedgeclk_ck)32data_in <=32'hA1B9_0000;33@(posedgeclk_ck)34data_in <=32'h0000_0006;35@(posedgeclk_ck)36data_in <=32'h0000_0007;37@(posedgeclk_ck)38data_in <=32'h0000_0008;39@(posedgeclk_ck)40data_in <=32'h0000_0009;41@(posedgeclk_ck)42req_in <=1'b0;43data_in <=32'h0000_0000;44req_in <=1'b0;45#100046$finish;47end4849always#10clk_ck =~clk_ck;5051//------filter_data_store_inst-------52filter_data_store filter_data_store_isnt(53.clk_ck(clk_ck),//inputclk_ck54.rst_b(rst_b),//inputrst_b55.req_in(req_in),//inputreq_in56.data_in(data_in),//input [31:0] data_in5758.req_in_ack(req_in_ack ),//output req_in_ack 59.data_out (data_out ),//output [31:0] data_out 60.data_out_vld(data_out_vld)//output data_out_vld 61);6263endmodule//----------------QuestaSim仿真出的波形如下所示:

162a4dac-335d-11ed-ba43-dac502259ad0.png

審核編輯:湯梓紅


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • fifo
    +關注

    關注

    3

    文章

    387

    瀏覽量

    43649
  • Verilog
    +關注

    關注

    28

    文章

    1351

    瀏覽量

    110075
  • HDL
    HDL
    +關注

    關注

    8

    文章

    327

    瀏覽量

    47377

原文標題:求職攻略| 一題解決同步FIFO設計難題

文章出處:【微信號:達爾聞說,微信公眾號:達爾聞說】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    基于CAZAC序列的OFDM時頻同步方案解析

    本文提出了一種基于CAZAC序列的OFDM時頻同步方案,給出了方案各部分的FPGA實現框圖和硬件電路實測效果。首先利用時域同步參考符號進行分
    的頭像 發表于 12-17 13:24 ?3242次閱讀
    基于CAZAC<b class='flag-5'>序列</b>的OFDM時頻<b class='flag-5'>同步</b>方案解析

    同步FIFO設計詳解及代碼分享

    FIFO (先入先出, First In First Out )存儲器,在 FPGA 和數字 IC 設計中非常常用。 根據接入的時鐘信號,可以分為同步 FIFO 和異步 FIFO 。
    發表于 06-27 10:24 ?2083次閱讀
    <b class='flag-5'>同步</b><b class='flag-5'>FIFO</b>設計詳解及代碼分享

    握手型接口的同步FIFO實現

    按照正常的思路,在前文完成前向時序優化和后向時序優化后,后面緊跟的應該是雙向時序優化策略了,不過不急,需要先實現一下握手型同步FIFO。
    的頭像 發表于 12-04 14:03 ?717次閱讀
    握手型接口的<b class='flag-5'>同步</b><b class='flag-5'>FIFO</b><b class='flag-5'>實現</b>

    如何利用FPGA實現準單輸入調變序列生成器的設計?

    本文針對一種產生準單輸入跳變測試序列的低功耗測試生成器的缺點提出了改進設計方案,并且利用EDA技術在FPGA芯片上進行了設計實現。
    發表于 04-29 06:13

    基于VHDL和FPGA的非對稱同步FIFO設計實現

    本文采用VHDL描述語言,充分利用Xilinx公司Spartan II FPGA的系統資源,設計實現了一種非對稱同步FIFO,它不僅提供數據緩沖,而且能進行數據總線寬度的轉換。
    發表于 01-13 11:33 ?1960次閱讀

    利用VHDL語言和格雷碼對地址進行編碼的異步FIFO的設計

    FIFO (先進先出隊列)是一種在電子系統得到廣泛應用的器件,通常用于數據的緩存和用于容納異步信號的頻率或相位的差異。FIFO實現通常是利用雙口RAM和讀寫地址產生模塊來
    的頭像 發表于 08-02 08:10 ?2229次閱讀
    <b class='flag-5'>利用</b>VHDL語言和格雷碼對地址進行編碼的異步<b class='flag-5'>FIFO</b>的設計

    利用ISE的SDRAM設計的FIFO實驗

    利用ISE的SDRAM設計的FIFO實驗(嵌入式開發轉后端開發)-利用ISE的SDRAM設計的FIFO實驗,適合感興趣的學習者學習,可以提高自己的能力,大家可以多交流哈
    發表于 08-04 12:14 ?18次下載
    <b class='flag-5'>利用</b>ISE的SDRAM設計的<b class='flag-5'>FIFO</b>實驗

    同步FIFO之Verilog實現

    FIFO的分類根均FIFO工作的時鐘域,可以將FIFO分為同步FIFO和異步FIFO。
    的頭像 發表于 11-01 09:57 ?1976次閱讀

    異步FIFO之Verilog代碼實現案例

    同步FIFO的意思是說FIFO的讀寫時鐘是同一個時鐘,不同于異步FIFO,異步FIFO的讀寫時鐘是完全異步的。
    發表于 11-01 09:58 ?1662次閱讀

    基于寄存器的同步FIFO

    ? FIFO 是FPGA設計中最有用的模塊之一。FIFO 在模塊之間提供簡單的握手和同步機制,是設計人員將數據從一個模塊傳輸到另一個模塊的常用選擇。 在這篇文章中,展示了一個簡單的 RTL
    的頭像 發表于 06-14 09:02 ?761次閱讀

    FPGA學習-序列檢測

    點擊上方 藍字 關注我們 一、前言 在數字電路中,序列檢測器(Sequence Detector)是指一種特殊類型的電路,用于尋找輸入信號中一定模式的子序列。該模式可以是任意模式,包括
    的頭像 發表于 08-29 10:20 ?1465次閱讀
    FPGA學習-<b class='flag-5'>序列</b><b class='flag-5'>檢測</b>器

    基于Verilog的同步FIFO的設計方法

    同步FIFO的設計主要包括讀寫地址的產生、數據的讀寫、以及狀態的控制。下面我們將分別介紹這三個方面的設計。
    發表于 08-31 12:53 ?879次閱讀

    同步FIFO設計分析

    模塊雖小但是要有新意,首先寫一個同步FIFO,這是一個爛大街的入門級項目,但是我肯定不會寫的那么簡單
    的頭像 發表于 09-11 17:11 ?608次閱讀
    <b class='flag-5'>同步</b><b class='flag-5'>FIFO</b>設計分析

    同步FIFO和異步FIFO的區別 同步FIFO和異步FIFO各在什么情況下應用

    簡單的一種,其特點是輸入和輸出都與時鐘信號同步,當時鐘到來時,數據總是處于穩定狀態,因此容易實現數據的傳輸和存儲。 而異步FIFO則是在波形的上升沿和下降沿上進行處理,在
    的頭像 發表于 10-18 15:23 ?1681次閱讀

    利用AD7616靈活的可編程序列器和突發模式實現同步采樣

    電子發燒友網站提供《利用AD7616靈活的可編程序列器和突發模式實現同步采樣.pdf》資料免費下載
    發表于 11-24 14:53 ?4次下載
    <b class='flag-5'>利用</b>AD7616靈活的可編程<b class='flag-5'>序列</b>器和突發模式<b class='flag-5'>實現</b>準<b class='flag-5'>同步</b>采樣
    主站蜘蛛池模板: 亚洲欧美一区二区三区蜜芽| nxgx69日本护士| 父亲猜女儿在线观看| 久久不射视频| 乌克兰18性hd| jiucao在线观看精品| 久久er99热精品一区二区| 歪歪漫画羞羞漫画国产| 99精品国产高清自在线看超| 黑吊大战白女出浆| 四虎影院2022| wwwwwwwww日本电影| 快穿之H啪肉| 一一本之道高清手机在线观看 | 久久丫线这里只精品| 午夜影院c绿象| 成人小视频免费在线观看| 美女胸被男子强捏视频| 亚洲中文字幕欧美自拍一区| 国产精品悠悠久久人妻精品| 热久久伊大人香蕉网老师| 6080伦理久久亚洲精品| 久久精品成人免费网站| 亚洲精品成人久久久影院| 国产VA精品午夜福利视频| 欧美自拍亚洲综合图区| 2020最新无码国产在线视频| 久久yy99re66| 亚洲视频欧美视频| 好男人在线观看视频观看高清视频免费 | 国产精品一区二区资源| 色多多深夜福利免费观看| AV无码九九久久| 免费果冻传媒2021在线看| 征服艳妇后宫春色| 久久香蕉电影| 中文字幕亚洲第一页| 久久中文字幕无码A片不卡| 一个人的视频全免费在线观看www 一个人的免费完整在线观看HD | 涩涩电影网| 短篇合集纯肉高H深陷骚 |