集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 5168|回复: 7

fpga提问:Verilog内如何实现左移而不增加字长?

[复制链接]
tim 发表于 2010-6-26 01:21:24 | 显示全部楼层 |阅读模式
fpga提问:Verilog内如何实现左移而不增加字长?
比如:
做移位寄存器,8位的reg,<<后字长变为9位(和C语言不同)
如何保证字长不增加?
VVIC 发表于 2010-6-26 02:52:29 | 显示全部楼层
应该是把原来寄存器的值赋给另一个寄存器,在这个赋值过程中实现移位的吧~记得电脑的核心构架ALU中实现移位都是这样的
FFT 发表于 2010-6-26 04:28:43 | 显示全部楼层
应该比较简单的
ICE 发表于 2010-6-26 06:19:42 | 显示全部楼层
卡掉一位<br>
wire [7:0] a,b;<br>
wire [8:0] b_shift;<br>
assign b_shift=b&lt;&lt;1;<br>
assign a=b_shift[7:0];<br>
如果不想卡掉就用循环移位吧
interig 发表于 2010-6-26 07:28:31 | 显示全部楼层
在移进新bit的同一拍将移出bit移出使用
ups 发表于 2010-6-26 07:49:25 | 显示全部楼层
reg[7:0] d;<br>
always@(clk)<br>
begin<br>
d[7:0] &lt;= {d[6:0],d[7]};<br>
end
FFT 发表于 2010-6-26 09:03:39 | 显示全部楼层
楼主说的太好了<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
---------------------------------------------------------------------------------------------------------------------------------------<br>
Don't stand in the way of my actualization as a man<br>
Sunlife 发表于 2015-6-24 10:22:58 | 显示全部楼层
在移进新bit的同一拍将移出bit移出使用
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|fpga论坛|fpga设计论坛 ( 京ICP备20003123号-1 )

GMT+8, 2025-5-6 16:34 , Processed in 0.070906 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表