VL4 移位運算與乘法

image.png

image.png

輸入描述:

輸入信號 d, clk, rst

類型 wire

在testbench中,clk為周期5ns的時鐘,rst為低電平復位

輸出描述:

輸出信號 input_grant out

類型 reg

這里有一點需要了解下:就是>>1 相當于乘2,那么就是乘3的話就是相當于>>2-1[即乘4-1]

image.png

實現代碼:

`timescale 1ns/1ns
module multi_sel(
input [7:0]d ,
input clk,
input rst,
output reg input_grant,
output reg [10:0]out
);
//*************code***********//
  
    reg [1:0] cnt;
    reg [7:0] din;
    always@(posedge clk or negedge rst) begin
        if(!rst) begin
            cnt <= 0;
            out <= 0;
            input_grant <= 0;
            din <= 0;
        end
        else begin
            cnt <= cnt +1;
            case(cnt)
                0: begin
                    din <= d;
                    input_grant <= 1;
                    out <= d;
                end
                1: begin
                    input_grant <= 0;
                    out <= (din<<2) -din;
                end
                2: begin
                    input_grant <= 0;
                    out <= (din<<3)-din;
                end
                 3: begin
                    input_grant <= 0;
                    out <= (din<<3);
                end
            endcase
        end
    end
                       
endmodule
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 學號:16010199021 姓名:李若宇 轉載自 http://blog.csdn.net/sun1991011...
    承瑜閱讀 1,806評論 0 1
  • 環境噪聲監測報警系統 目錄 摘要 2緒論 3第一章:硬件設計部分 61.1噪聲監測系統的硬件選擇 61.1...
    Sophiaq閱讀 2,908評論 0 0
  • 1.設計一個10進制計數器,用七段數碼管顯示計數器的數值,以DE2板上1個撥動開關(switch)作為計數器的時鐘...
    Carbin閱讀 1,126評論 0 1
  • testbench 1. 激勵的產生 對于testbench而言,端口應當和被測試的module一一對應。端口分為...
    Michael_Johnson閱讀 2,691評論 0 1
  • 1.串行乘法器(8位為例) 1.1 verilog 程序 module mutilpiler( clk,mutil...
    一切都好呀閱讀 295評論 0 0