![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Verilog 设计与综合实验报告
Verilog 设计与综合实验报告
积极向@
这个作者很懒,什么都没留下…
展开
-
verilog 设计与综合实验报告(6)
输入为car车辆到来时为1,无车时为0,输出o_signal为交通信号灯,0001时为红灯,0010时为黄灯,0100时为绿灯,1000时为左拐灯,复位之后,交通灯在空闲状态,当车辆到来时交通灯到下一状态绿灯,等待40s,到下一状态左拐灯,等待15s,到黄灯,然后等待5s转到空闲态,无车时,转到红灯,等待55s之后,到黄灯等待5s,回到空闲态继续判断。原创 2024-06-20 12:49:58 · 661 阅读 · 1 评论 -
verilog 设计与综合实验报告(7)
首先定义一个缓存器,位宽为32位,深度为32位,然后根据读写时序,设置写使能和读使能wren = i_apb_pwrite && i_apb_penable && i_apb_psel;当i_apb_psel为高,i_apb_penable为低,i_apb_pwrite为高时写入数据2和地址1,之后i_apb_penable为高时保持一个周期,之后读时序i_apb_psel为高,i_apb_penable为低,i_apb_pwrite为低时,地址1,读出数据2。进行下一次写入地址2数据3,读出数据3。原创 2024-06-20 16:09:12 · 739 阅读 · 0 评论 -
verilog 设计与综合实验报告(5)
当复位为0时,开始输入,当时钟上升沿到来时给输入,01010011时,最后是10011所以下一个时钟输出1。输入为010100110100110011,总共检测到三个10011,分别为01010011,输出1,01010011010011,输出1,010100110100110011输出1。原创 2024-06-19 19:21:32 · 689 阅读 · 0 评论 -
verilog 设计与综合实验报告
输入都为8bit,200ns时,a=100,b=25,则re = 1;500ns时,a=3,b=75,则reb = 1;输入为时钟i_clk,复位i_rst,a,b;输出为re,reb,eq。使用组合逻辑,always语句块。900ns时,a=98,b=98,则eq = 1;原创 2024-06-15 21:24:37 · 172 阅读 · 0 评论 -
verilog 设计与综合实验报告(2)
输入peolpe_cnt为参与表决的人数,每一位bit表示一人,低位不赞成,高位赞成,输出is_or_not表示表决是否通过,低位不通过,高位通过。使用两个寄存器,cnt_is和cnt_not表示赞成和不赞成的人的个数,如果cnt_is>cnt_not则表示通过,反之则表示不通过。1的个数为5个,表示5个人赞成,10个人不赞成,则最终不通过,输出is_or_not为0,1的个数为8个,表示8个人赞成,7个人不赞成,则最终通过,输出is_or_not为1,原创 2024-06-16 12:23:37 · 155 阅读 · 0 评论 -
verilog 设计与综合实验报告(3)
例如:4x4bit调用2x2bit的模块,如1101x1110,则10x01,10x11,11x01,11x11,得到10,110,11,1001,然后错位得到10,11000,1100,10010000,则相加得到10110110。首先设计一个16x16bit的乘法器,然后将64bit分为4个16bits,通过错位相乘,则就有16个16x16的模块,然后参考竖式计算的格式,进行错位相加,得到129bit的输出out。输入为64bit的a和b,输出为129bit的out。十进制为13x14 = 182。原创 2024-06-17 09:35:39 · 692 阅读 · 0 评论 -
verilog 设计与综合实验报告(4)
当复位为低时开始计数,从8’b00000001开始移位,00000010,00000100,00001000,00010000,00100000,01000000到8’b10000000,然后再移位01000000,00100000,00010000,00001000,00000100,00000010再到8’b00000001。环形计数器的计数周期为2*WIDTH-1,例如8bit的寄存器计数周期为15。原创 2024-06-18 22:32:37 · 306 阅读 · 0 评论