微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 怎样设定电路里的移位都用barrel shifter?

怎样设定电路里的移位都用barrel shifter?

时间:10-02 整理:3721RD 点击:
看论文看到人家说他的移位都用barrel shifter实现,Verilog 移位我一般都这样写B=A<<shifter_number,具体综合出来的电路用的是哪种移位器我也不知道,怎样设定电路里的移位都用barrel shifter?这是综合时加约束实现的吗?怎样加约束呀?感谢大家

自己写一个barrel shifter的移位器模块,然后需要的时候实例化调用

你写成这样综合时候不加任何约束默认就是桶状移位寄存器。
还有我很好奇为什么非要用桶状移位寄存器呢?这种移位方式没有什么优点啊?面积大、效率低、速度慢。


非常感谢。您说的很对,用synchronous shifte register 会比barrel shifter好很多。请问如果想用synchronous shifte register 完成移位,也是综合时加约束就可以实现吗?怎样设定约束呢?

我发现Altera IP核中有LPM_CLSHIFT,应该是移位器的IP核吧。如果用FPGA 实现,应该可以调用IP核。不知道这样做对不对。



    如果是FPGA实现,直接在verilog中例化该IP即可完成调用。使用前查看下IP的datasheet,是否满足你的要求。


好的,感谢热情帮助!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top