在SV中,流操作符>>和<<用在赋值表达式的右边,后面带表达式、结构或数组。流操作符用于把其后的数据打包成一个比特流。操作符>>把数据从左至右变成流,而<<则把数据从右至左变成流。你也可以制定一个片段宽度,把源数据按照这个宽度分段以后再转变成流。不能将比特流结果直接赋给非合并数据,而应该在赋值表达式的左边使用流操作符把比特流拆分到非合并数组中。如下面代码所示:

initial beginint h;bit [7:0] b, g[4], j[4] = '{8'ha, 8'hb, 8'hc, 8'hd};bit [7:0] q, r, s, t;h = {>>{j}};                                //0a0b0c0d  把数组打包成整型h = {<<{j}};                             //b030d050 位倒序h = {<<byte{j}};                           //0d0c0b0a 字节倒序g = {<<byte{j}};                          //0d,0c,0b,0a拆分成数组b = {<<{8'b0011_0101}};                       //1010_1100位倒序b = {<<4{8'b0011_0101}}                       //0101_0011半字节倒序{>>{q, r, s, t}} = j;                        //把j分散到四个字节变量h = {>>{t, s, r, q}};                       //把字节集中到h
end

System Verilog 流操作符相关推荐

  1. System Verilog学习小结

    System Verilog课程小结 第一周 问题1:设计人员和验证人员他们的协作关系体现在哪些地方? 1.设计人员和验证人员都需要围绕功能描述文档开展工作 2.设计只有经过充分量化验证,才有信心去流 ...

  2. (17)FPGA面试技能提升篇(System Verilog)

    1.1 FPGA面试技能提升篇17(System Verilog) 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)FPGA面试技能提升篇17(System Verilo ...

  3. System verilog利用class类打印信息

    1.1 System verilog利用class类打印信息 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)System verilog利用class类打印信息: 5) ...

  4. System verilog随机系统函数$randomize使用方法

    1.1 System verilog随机系统函数$randomize使用方法 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)System verilog随机系统函数$r ...

  5. System verilog随机函数$urandom输出8bit随机数

    1.1 System verilog随机函数$urandom输出8bit随机数 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)System verilog随机函数$ur ...

  6. System verilog随机系统函数$urandom_range使用方法

    1.1 System verilog随机系统函数$urandom_range使用方法 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)System verilog随机系统 ...

  7. System verilog随机系统函数$urandom使用方法

    1.1 System verilog随机系统函数$urandom使用方法 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)System verilog随机系统函数$ura ...

  8. System verilog随机系统函数$random使用方法

    1.1 System verilog随机系统函数$random使用方法 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)System verilog随机系统函数$rand ...

  9. sv_labs学习笔记——sv_lab5_上(System Verilog)

    本节将介绍lab5的第一部分,主要总结一般设计学习与思考的方式与需要着重学习的点,同时以lab5作为参考,分析数据流流向,验证组件的通信与抽象化,实现的整体思路. sv_labs学习笔记--sv_la ...

最新文章

  1. 定制浏览器地址栏前的小图标
  2. Matlab-绘制日期图
  3. Flutter开发-iOS报错Trying to embed a platform view but the PrerollContext does not s
  4. 基金指数温度怎么算_鱼缸加热棒必不可少的东西,我们怎么正确使用?
  5. 《巫师 3:狂猎》:传统叙事在开放世界中的水土不服
  6. 重构机房收费系统总结1之配置文件+反射+抽象工厂
  7. (十五)WebGIS中平移功能的设计和实现
  8. com.microsoft.sqlserver.jdbc.SQLServerException: 索引 7 超出范围。
  9. 关于绑定了GridView控件后怎么截取字符串和CSS样式来控制表头不换行
  10. 打印Python当前版本详细信息
  11. 如何更新linux系统时间
  12. .Net下二进制形式的文件(图片)的存储与读取(转载)
  13. python安装与开发环境搭建实验总结_python开发环境安装配置
  14. 为socket的recv/send设置超时
  15. 我的第一个项目(员工绩效管理系统 步骤超级详细---未完待更...)
  16. java excel 转 图片_Java 将Excel转为图片、html、XPS、XML、CSV
  17. 大数据Flink(八):Flink入门案例
  18. 局域网下连接其他电脑的HDFS集群
  19. “快充”还是感觉慢,到底是什么原因?
  20. 外文翻译原文附在后面_外文翻译与外文原文(参考格式).doc

热门文章

  1. oracle 修改字段名称和备注,oracle 修改 字段名称
  2. 瀚高数据库闪回(APP)
  3. Linux的内存管理
  4. 关于Python 下载pyecharts 运行下提示报错 cannot import name ‘line‘等问题
  5. 2020届华为和360优招技术岗软件笔试题
  6. 中国艺术孙溟㠭禅意篆刻《来此作甚》
  7. ASP.NET MVC过滤器的使用
  8. 操作系统发展史与linux系统发展史
  9. 中国移动光猫无线路由一体机如何再接另外一个无线路由器
  10. 【专题系列】设计模式—— 六:开闭原则