embedded - Verilog中1和1'b1之间的区别
问题描述
在verilog代码中只给出1和给出1'b1有什么区别?
解决方案
1 是 32 位宽,因此相当于32'b00000000_00000000_00000000_00000001
1'b1 有点宽。
有几个地方你应该意识到长度的不同,但最有可能让你发现的地方是串联。{}
reg [ 7:0] A;
reg [ 8:0] B;
assign A = 8'b10100101;
assign B = {1'b1,A}; // B is 9'b110100101
assign B = {1,A}; // B is 9'b110100101
assign B = {A,1'b1}; // B is 9'b101001011
assign B = {A,1}; // B is 9'b000000001 !!!!
推荐阅读
- c# - JSON 响应对象和 C# 最佳实践?
- instagram - Instagram 应用程序修订版怎么样?
- javascript - chrome 扩展中的 captureVisibleTab 返回双倍大小的图像
- java - 只有在我的 Google Pixel 2 上运行 Android 应用程序才会崩溃
- ruby-on-rails - RSpec: Method test will not pass unless method called therein is also tested?
- apache-flink - 除了使用 .startNewChain() 之外,还有没有办法在集群 gui 中拆分 Flink 任务?
- mysql - 从 EC2 到 RDS 的连接速度很慢,而到 RDS 的本地连接很好
- python - Python scikit-learn:如何将决策树叶转换为虚拟变量?
- c# - 获取属性名称的轴心并列出属性值
- youtube - API - 任何方式来验证播放列表 ID?