8.1 review 2

【1.leetcode 171】

1.ASCII: _______________      ord('A')=65

2.python 和 verilog 遍历的区别/list[0]: _________

python list[0] 是最左边,左->右,verilog 是最右边

3.进制的算法 'BA' ? ____________

Y=(该位的数)*(加多少数引发进位?)**index

index: ________       左<- 右

【2.sv】

2.1: callback, 用法? 1,2,3 _________

1.预留入口|| 2.define callback function/class|| 3.instantiate and add callback instance

2.2: 参数化的类, 举例 _______

class mailbox #(type T=int)

【3.async fifo的verilog】

1.fifo_men 

Input wrclk

input wren

input full

Input [DSIZE-1:0]wrdata 

Output [DSIZE-1:0]rdata

Input [ASIZE-1:0] waddr

Input [ASIZE-1:0] raddr

//DEPTH的定义: ______

localparam DEPTH=1<<ASIZE;//1000

//RAM的定义:_________

[DSIZE-1:0]Ram[DEPTH-1:0]

Assign rdata=______

Ram[raddr];

always @(posedge wrclk) begin

 If (wren&& !full)begin

        Ram[waddr]<=wrdata;

        end

end

2.module wptr_full

#(parameter ASIZE=4)

(

output:_______

[ASIZE:0]w_ptr;

input w_rstn;

Input w_en;

output reg full;

input [ASIZE:0]w_rptr;

output [ASIZE-1:0]waddr;

input wclk;

)

reg [ASIZE:0] bin_ptr, next_ptr, next_grey;

reg val_full;

assign next_grey= _________ 

         (next_ptr>>1)^next_ptr;

assign next_ptr=__________

        bin_ptr+w_en&&(~full);

assign val_full=___________

        ({~w_rptr[ASIZE:ASIZE-1],w_rptr[ASIZE-2:0]}==next_grey);

assign waddr=____________

        bin_ptr[ASIZE-1:0];

always @(posedge wclk or negedge w_rstn) begin

        If (!w_rstn) begin

                full<=0;

                w_ptr<=0;

                bin_ptr<=0;

        end

        else begin

                full<=val_full;

                w_ptr<=next_grey;

                bin_ptr<=next_ptr; 

        end

end

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值