Verilog常見必備面試題

2021-03-02 ZYNQ

使用verilog hdl實現具有同步RESET和SET的觸發器,具有異步RESET和SET的觸發器。

異步reset和set

always@(posedge clk or negedge reset or posedge set)
begin
  if(set)
  Q<=1;
    else if(!reset)
  Q<=0;
    else
  Q<=D;
end

同步reset和set

always@(posedge clk)
begin
  if(set)
    Q<=1;
  else if(!reset)
    Q<=0;
  else
    Q<=D;
end

使用verilog hdl通過異步RESET和SET實現鎖存器。

always @(clk or reset or set)
begin
  if(set)
    Q=1;
  else if(!reset)
    Q=0;
  else
    Q=D;
end

使用Verilog hdl實現2對1多路復用器。

assign Y=(SEL==1'b0)?A:B;

使用AND門,OR門和反相器實現2對1多路復用器。

module MUX21(A, B, SEL, Y);
  input A,B,SEL;
  output Y;
  net SEL_NOT, A_AND, B_AND;
  not u0(SEL_NOT, SEL);
  and u1(A_AND, SEL_NOT, A);
  and u2(B_AND, SEL, B);
  or u3(Y, A_AND, B_AND);
endmodule

使用2對1多路復用器實現兩個輸入「或」門。

module or2(A, B, Y);
  input A, B;
  output Y;
  MUX21 u0(Y, A, B, B );
endmodule

module MUX21(Y, A ,B, SEL)
  input A,B,SEL;
  output Y;
  assign Y=(SEL==1』b0):A:B;
endmodule

assign Y=A?A:B;

使用三態緩衝器來實現漏極開路緩衝器。

assign Y=EN?DataIn:1'bz;

將一個輸入時鐘除以3,由verilog hdl編寫。

module clk_div_3(clk, reset, clk_out);
  input reset,clk;
  output clk_out;
  reg clk_out;
  reg [1:0] cnt;
  always@(posedge clk or negedge reset)
  begin
    if(!reset)
      begin cnt<=2'b00;
        clk_out<=0;
      end
    else if(cnt==2'b01) begin clk_out<=~clk_out;
      cnt<=cnt+1'b1; end
    else if(cnt==2'b10) begin clk_out<=~clk_out;
      cnt<=2'b00;end
    else cnt<=cnt+1'b1;
  end
endmodule

佔空比1/3


要將一個輸入時鐘除以3,需要50%的佔空比,由verilog hdl編寫。

module clk_div_3(clk, reset, clk_out);
  input reset,clk;
  output clk_out;
  reg clk_out1, clk_out2;
  reg [1:0] cnt1,cnt2;
  assign clk_out = clk_out1 | clk_out2;
  always@(posedge clk or negedge reset)
  begin
    if(!reset)
    begin cnt1<=2'b00;
    clk_out1<=0;end
    else if(cnt1==2'b01) begin clk_out1<=~clk_out1;
    cnt1<=cnt1+1'b1; end
    else if(cnt1==2'b10) begin clk_out1<=~clk_out1;
    cnt1<=2'b00;end
    else cnt1<=cnt1+1'b1;
  end

  always@(negedge clk or negedge reset)
  begin
    if(!reset)
    begin cnt2<=2'b00;
      clk_out2<=0;
    end
    else if(cnt2==2'b01) begin clk_out2<=~clk_out2;
      cnt2<=cnt2+1'b1; end
    else if(cnt2==2'b10) begin clk_out2<=~clk_out2;
      cnt2<=2'b00;end
    else cnt2<=cnt2+1'b1;
  end
endmodule



module clk_div_3(clk, reset, clk_out);
  input reset,clk;
  output clk_out;
  reg [1:0] cnt;
  reg clk_out1, clk_out2;
  always@(posedge clk)
    begin
    if(!reset)
      cnt<='d0;
    else if(cnt=='d2)
      cnt<='d0;
    else
      cnt<=cnt+1;
  end

  always @(posedge clk or negedge reset)
  begin
    if(!reset)
      clk_out1<='d0;
    else if(cnt=='d2)
      clk_out1<=~clk_out1;
    else if(cnt == 'd1)
      clk_out1<=~clk_out1;
  end

  always @(negedge clk or negedge reset)
  begin
    if(!reset)
      clk_out2<='d0;
    else if(cnt=='d2)
      clk_out2<=~clk_out2;
    else if(cnt == 'd1)
      clk_out2<=~clk_out2;
  end
  assign clk_out = clk_out1 | clk_out2;
endmodule


相關焦點

  • Java 最常見的 200+ 面試題:面試必備
    聊回面試題這件事,這份面試清單原本是我們公司內部使用的,可到後來有很多朋友在微信上聯繫到我,讓我幫他們找一些面試方面的資料,而且這些關係也不太好拒絕,一呢,是因為這些找我,要面試題的人,不是我的好朋友的弟弟妹妹,就是我的弟弟妹妹們;二呢,我也不能馬馬虎虎的對付,受人之事忠人之命,我也不能辜負這份信任。
  • 電子工程師面試題
    (南山之橋)  62、寫異步D觸發器的verilog module。( 1)畫出fsm(有限狀態機);(2)用verilog編程,語法要符合fpga設計的要求。(未知 )  72、設計一個自動飲料售賣機,飲料10分錢,硬幣有5分和10分兩種,並考慮找零:(1) 畫出fsm(有限狀態機);(2)用verilog編程,語法要符合fpga設計的要求;(3)設計   工程中可使用的工具及設計大致過程。
  • 面試必備!Hadoop常見面試題匯總
    面試題二:請簡述Hadoop常用的配置文件及Hadoop集群搭建過程1、配置文件:Hadoop2.x的配置文件有core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml、slavesHadoop3.x
  • 【別笑】手撕吊打面試官系列面試題
    必備面試題js基礎1.用js列印一個乘法表這一題面試官考察的是你關於js的列印相關基礎api的熟悉程度,以及基本的數學常識,送分題console.log(`1*1=12*1=2 2*2=43*1=3 3*2=6 3*3=94*1=4 4*2=8 4*3=12 4*4=16
  • 一道Nvidia的面試題
    老李今天分享一道Nvidia面試題,是當年老李去面他家onsite的時候被問到的一個面試題。
  • Nginx面試中最常見的18道題 抱佛腳必備
    Nginx是網頁伺服器運維人員必備技能之一,下面為大家整理了一些比較常見的Nginx相關面試題,僅供參考:  1、請解釋一下什麼是Nginx?
  • 免費送大廠必備面試題,拒絕套路
    但無論是想要跳槽或晉升讓薪資翻倍,還是會遇到各種各樣的面試。最近Debug整理了一套「2020年程式設計師面試必備題」,現免費分享給大家。內容共有30章,從Java基礎到框架JVM,附帶答案……讓你去面試時就十拿九穩!
  • Verilog開源仿真工具Icarus Verilog的工作原理
    編譯編譯就是從接收命令行參數開始,到預處理(verilog宏展開,文件include,條件編譯),Verilog語法解析(關鍵字識別、語法解析),最後轉換成內部的數據結構(就是用各種class、結構體,如module、net、scope、generate、statement、expression等)的過程。簡單的講,就是實別Verilog文件,轉成內部的資料庫。
  • Verilog代碼轉VHDL代碼經驗總結
    等我們學習FPGA到一定程度參加面試時,面試者也會問你一個問題:你以前用Verilog還是VHDL開發?你已經習慣某種語言,也發現語言不是學習FPGA時需要考慮的問題,它僅僅是硬體描述語言工具而已。在vhdl中沒有邏輯與(verilog中的&&),只有按位與(verilog中的&,vhdl中的and),所以verilog中的邏輯與,在vhdl中有時需要用等價的方式替換,比如:
  • Java最常見600+面試題全解析:面試必備
    最近在刷面試題,所以需要看大量的Java相關的面試題,從大量的題目中總結了很多的知識,也分享給需要的同學。尚學堂與500+企業合作,建立IT行業最全的企業面試題庫。每周8~20家企業上門招聘,輕鬆掌握企業最新面試題集。本題集幾乎都是【必考題】,都能看懂的話,保你面試十拿九穩。
  • HDLBits:在線學習Verilog(七 · Problem 30-34)
    解答與分析// synthesis verilog_input_version verilog_2001module top_module( input a, input b, input sel_b1, input sel_b2, output wire out_assign,
  • 2020Python常見面試題及答案-開課吧
    Python面試題【Python面試題】-iterable(可迭代對象【Python面試題】怎樣聲明多個變量並賦值?addict 是第三方庫,需要先安裝 pip install addict from addict import Dictaddicted = Dict() addicted.a.b.c.d.e = "value"【Python面試題】如何提高python的運行效率?
  • 【新年跳槽必備】2020最新(前端原生JS專題)面試題 速領!
    最近我把每周更新的面試題發在我們的學習群裡大家似乎都很高冷哇難道是默默的做題去了沒說話
  • 談談Verilog/System Verilog 和C的幾種交互方式
    PLI全稱 Program Language Interface,程式設計師可以通過PLI在verilog中調用C函數,這種訪問是雙向的。這些用戶定義的系統任務和函數的名稱必須以美元符號"$" 開頭。大家用得比較多的PLI函數有$display,\$finish等。
  • 好程式設計師Python教程分享常見的Python面試題
    好程式設計師Python教程分享常見的Python面試題,程式設計師面試難免會需要進行筆試,筆試是考驗程式設計師基礎功底的重要環節,根據很多小夥伴的面試反饋,今天總結分享了一些常見的Python面試題,想要看Python面試是不是可以順利通過,這些常見的Python面試題你應該看看。
  • 常見結構化面試經典100題及答案查看
    常見結構化面試經典100題及答案查看由北京教師招聘考試網提供:更多關於結構化面試經典100題的內容請關注教師資格考試網/北京教師招聘考試網!或關注北京華圖微信公眾號(bjhuatu),北京教師考試培訓諮詢電話:400-010-1568。
  • 500道Java 必備面試題答案(過後即刪)
    其實,很多面試者在搜集面試資料的時候都踩過一些「坑」,你是不是也遇到過:免費搜索的面試題,內容不全面,這就算了,有時候答案都不準確;很多培訓機構提供的面試寶典內容雖然不少,但深度不夠,且面試題過於老舊脫離了企業實際需要;還有很多付費的面試題存在濫竽充數,提供了很多沒有價值的面試題,錢花了,乾貨沒學到;
  • 公務員結構化面試的常見流程
    所謂面試,其實是考官通過與應試者雙方面對面的信息溝通和行為觀察,來測評應試者是否具備與職業相關的能力和個性品質的一種人事測評手段。在各種各樣的面試形式中,結構化面試是較為普遍的一種面試方式,它的測評要素、面試試題、實施程序、評分標準、考官組成等都是事先進行了規範性設計的,簡而言之,結構化面試是一種標準化的面試。那麼,在結構化面試的當天,考生到底會經歷什麼,又需要注意什麼呢?
  • 測試面試題集錦(一)| 軟體測試常見必考問題與流程篇(附答案)
    本系列文章總結歸納了一些軟體測試工程師常見的面試題,主要來源於個人面試遇到的、網絡搜集(完善)、工作日常討論等,分為以下十個部分,供大家參考。如有錯誤的地方,歡迎指正。有更多的面試題或面試中遇到的坑,也歡迎補充分享。希望大家都能找到滿意的工作,共勉之!
  • 2019年java常見面試題
    本人今年2月份來到上海來尋求工作,已經面試了10多家了,在這裡分享一下我的心得和常問到的面試題。,所以當面試官說回去等消息的時候,並不代表沒有機會,有時候需要討論篩選才能最終確定人選。走馬觀花式的學習;6、當遇到一些設計類的問題時,一般面試官考察的是你的思路,對問題的應變能力,對於事物觀察的點;技術面試題: