当前位置: 首页 > news >正文

网站服务器计算机安全的措施做论坛app网站

网站服务器计算机安全的措施,做论坛app网站,网络推广话术开场白,秦皇岛网站搜索排名1. 引言 以下是《riscv-v-spec-1.0.pdf》文档的关键内容#xff1a; 这是一份关于向量扩展的详细技术文档#xff0c;内容覆盖了向量指令集的多个关键方面#xff0c;如向量寄存器状态映射、向量指令格式、向量加载和存储操作、向量内存对齐约束、向量内存一致性模型、向量…  1. 引言 以下是《riscv-v-spec-1.0.pdf》文档的关键内容 这是一份关于向量扩展的详细技术文档内容覆盖了向量指令集的多个关键方面如向量寄存器状态映射、向量指令格式、向量加载和存储操作、向量内存对齐约束、向量内存一致性模型、向量算术指令格式、向量整数和浮点算术指令、向量归约操作、向量掩码指令、向量置换指令、异常处理以及标准向量扩展等。 首先文档定义了向量元素和向量寄存器状态之间的映射关系并阐述了向量指令的格式。在此基础上提出了配置设置指令如vsetvl、ivsetiv和vlsetvl用于设定向量长度VL和向量对齐长度AVL。 接着文档详细说明了向量加载和存储操作以及向量内存对齐和一致性模型。这些模型确保了向量操作的高效性和准确性。 然后文档介绍了向量算术指令格式包括向量整数、固定点和浮点算术指令。这些指令支持广泛的数学运算为高性能计算提供了强大的支持。 此外文档还涉及向量归约操作、掩码指令和置换指令这些指令增强了向量操作的灵活性和功能性。 最后文档讨论了异常处理机制并列举了标准向量扩展指令列表。这些扩展指令为向量处理器提供了丰富的功能集使其能够适应不同的应用场景和性能需求。 综上所述这份文档为向量指令集的设计和实现提供了全面的指导和参考有助于开发者更好地理解和利用向量处理器的能力。 【RISC-V 指令集】RISC-V 向量V扩展指令集介绍(一)-向量扩展编程模型-CSDN博客 【RISC-V 指令集】RISC-V 向量V扩展指令集介绍(二)-向量元素到向量寄存器状态的映射-CSDN博客【RISC-V 指令集】RISC-V 向量V扩展指令集介绍(三)-向量指令格式-CSDN博客 6 配置和设置指令(vsetvli/vsetivli/vsetvl) 处理大量元素的一种常见方法是“stripmining”在这种方法中每次循环迭代都会处理一定数量的元素迭代会一直持续到所有元素都被处理完毕。RISC-V向量规范为这种方法提供了直接、可移植的支持。应用程序将待处理的元素总数应用程序向量长度或AVL指定为vl的候选值硬件则通过一个通用寄存器响应根据微架构实现和vtype设置提供每次迭代中硬件将处理的通常更小的元素数量存储在vl中。一个简单的循环结构如stripmining示例和SEW的更改所示描绘了代码如何轻松地跟踪剩余的元素数量和硬件每次迭代处理的数量。 提供了一组指令以便根据应用程序需要快速配置vl和vtype中的值。vset{i}vl{i}指令根据其参数设置vtype和vl CSR并将vl的新值写入rd。 vsetvli rd, rs1, vtypei # rd new vl, rs1 AVL, vtypei new vtype setting vsetivli rd, uimm, vtypei # rd new vl, uimm AVL, vtypei new vtype setting vsetvl rd, rs1, rs2 # rd new vl, rs1 AVL, rs2 new vtype valueFormats for Vector Coniguration Instructions under OP-V major opcode ​6.1 vtype 编码 ​ Table 7. vtype register layout Bits Name Description XLEN-1 vill Illegal value if set XLEN-2:8 0 Reserved if non-zero 7 vma Vector mask agnostic 6 vta Vector tail agnostic 5:3 vsew[2:0] Selected element width (SEW) setting 2:0 vlmul[2:0] Vector register group multiplier (LMUL) setting 新的vtype设置被编码在vsetvli和vsetivli的立即字段中以及vsetvl的rs2寄存器中。 Suggested assembler names used for vset{i}vli vtypei immediate e8 # SEW8b e16 # SEW16b e32 # SEW32b e64 # SEW64b mf8 # LMUL1/8 mf4 # LMUL1/4 mf2 # LMUL1/2 m1 # LMUL1, assumed if m setting absent m2 # LMUL2 m4 # LMUL4 m8 # LMUL8 Examples: vsetvli t0, a0, e8 # SEW 8, LMUL1 vsetvli t0, a0, e8, m2 # SEW 8, LMUL2 vsetvli t0, a0, e32, mf2 # SEW32, LMUL1/2vsetvl变体的工作方式与vsetvli类似只不过它从rs2中获取vtype值并可用于上下文恢复。 如果实现不支持vtype设置则在vtype中设置vill位vtype中的其余位设置为零vl寄存器也设置为零。 早期的草案要求在设置vtype为非法值时产生陷阱。但是这会在ISA的CSR写入上增加第一个数据相关的陷阱。实现可以选择在将非法值写入vtype时设置陷阱而不是设置vill以允许仿真支持新的配置以实现向前兼容性。当前方案支持通过检查给定设置是否清除了vill对支持的向量单元配置进行轻量级运行时查询。 6.2 AVL 编码 新的向量长度设置基于AVL对于vsetvli和vsetvlAVL在rs1和rd字段中的编码如下 Table 8. AVL used in vsetvli and vsetvl instructions rd rs1 AVL value Effect on vl - !x0 Value in x[rs1] Normal stripmining !x0 x0 ~0 Set vl to VLMAX x0 x0 Value in vl register Keep existing vl (of course, vtype may change) 当rs1不是x0时AVL是存储在由rs1指定的x寄存器中的无符号整数新的vl值也将写入由rd指定的x寄存器。 当rs1x0但rd!x0时使用最大的无符号整数值(~0)作为AVL并将结果VLMAX写入vl以及由rd指定的x寄存器。 当rs1x0且rdx0时指令的操作就像是将vl中的当前向量长度用作AVL并将结果值写入vl但不写入目标寄存器。这种形式只能在VLMAX因此vl实际上没有因新的SEW/LMUL比率而改变时使用。如果使用新的SEW/LMUL比率会导致VLMAX发生变化则保留该指令的使用。在这种情况下实现可能会设置vill。 这种指令的最后一种形式允许在保持当前vl的同时更改vtype寄存器前提是VLMAX没有减少。这种设计是为了确保vl始终为当前的vtype设置持有合法值。当前的vl值可以从vl CSR中读取。如果新的SEW/LMUL比率导致VLMAX缩小则此指令可能会减少vl值因此这种情况已被保留因为这并不清楚这是一个普遍有用的操作而且实现可以假设此指令不会更改vl以优化其微架构。 对于vsetiv li指令AVL在rs1字段中编码为5位零扩展立即数0-31。 请注意vsetiv li的AVL编码与常规CSR立即数值的编码相同。 当向量寄存器内部向量的维度较小且已知时vsetiv li指令可以提供更紧凑的代码在这种情况下没有stripmining开销。 6.3 设置vl的约束 The vset{i}vl{i} instructions irst set VLMAX according to their vtype argument, then set vl obeying the following constraints: 1. vl  AVL if AVL ≤  VLMAX 2. ceil(AVL / 2) ≤  vl ≤  VLMAX if AVL  (2 * VLMAX) 3. vl VLMAX if AVL ≥   (2 * VLMAX) 4. Deterministic on any given implementation for same input AVL and VLMAX values 5. These speciic properties follow from the prior rules: a. vl  0 if AVL  0 b. vl  0 if AVL  0 c. vl ≤  VLMAX d. vl ≤  AVL e. a value read from vl when used as the AVL argument to vset{i}vl{i} results in the same value in vl, provided the resultant VLMAX equals the value of VLMAX at the time that vl was read vl的设置规则被设计为足够严格以保持vl在寄存器溢出和上下文交换时的行为当AVL VLMAX时同时又足够灵活使实现能够提高向量通道利用率当AVL VLMAX时。 例如这允许实现在VLMAX AVL 2 * VLMAX时设置vl ceil(AVL / 2)以便在stripmine循环的最后两次迭代中均匀分配工作。要求2确保即使在AVL 2 * VLMAX的情况下归约循环的第一次stripmine迭代也使用所有迭代中的最大向量长度。这使得软件无需显式计算在stripmined循环期间观察到的向量长度的运行最大值。要求2还允许实现在VLMAX AVL 2 * VLMAX时将vl设置为VLMAX。 6.4 举例 SEW和LMUL设置可以动态更改以在单个循环中的混合宽度操作上提供高吞吐量。 # Example: Load 16-bit values, widen multiply to 32b,shift 32b result # right by 3, store 32b values. # On entry: # a0 holds the total number of elements to process # a1 holds the address of the source array # a2 holds the address of the destination array loop: vsetvli a3, a0, e16, m4, ta, ma # vtype 16-bit integer vectors;# also update a3 with vl (# of elements this iteration)vle16.v v4, (a1) # Get 16b vector slli t1, a3, 1 # Multiply # elements this iteration by 2 bytes/source element add a1, a1, t1 # Bump pointer vwmul.vx v8, v4, x10 # Widening multiply into 32b in v8--v15 vsetvli x0, x0, e32, m8, ta, ma # Operate on 32b values vs rl.vi v8, v8, 3 vse32.v v8, (a2) # Store vector of 32b elements slli t1, a3, 2 # Multiply # elements this iteration by 4 bytes/destination element add a2, a2, t1 # Bump pointer sub a0, a0, a3 # Dec rement count by vl bnez a0, loop # Any more?
http://www.zqtcl.cn/news/513664/

相关文章:

  • 临沂做进销存网站推广软件公司
  • 网站前端建设唐山网站建设托管
  • 做效果图有哪些网站seo怎么做关键词排名
  • 深圳手机网站开发什么网站可以做英语题
  • 网站优化什么意思图片展示网站
  • 建德做网站米趋外贸网站建设
  • 国外优秀的设计网站八爪鱼磁力搜索引擎
  • 网站建设优化陕西网络营销推广方法与策略
  • 网站建设推广者怎样找到客户百度seo排名帝搜软件
  • 绵阳网站托管网站建设第一品牌
  • 张家港网站建设培训班电商seo引流
  • 网站安全怎么做手机网站 焦点图
  • 阿里云做网站的代码网上申请入团网站
  • 精品课程网站怎么做建筑图纸符号大全解释
  • 高权重网站 内页做跳转给新网站许昌做网站公司哪家专业
  • 咸阳网站建设工作室网站建设经
  • 网站怎么做短信接口新浪wordpress
  • 方维o2o 2.9蓝色团购网站程序源码模板做一电影网站怎么赚钱
  • 口碑好网站建设资源新昌网站建设
  • 苏州做网站的公司排名泉州网络推广专员
  • 无为县做互联网网站备案的时候网站建设方案书要吗
  • 修改网站的备案主体dede网站地图不显示文章列表
  • 建立个人网站的成本织梦html5手机网站模板
  • 怎么自己建一个网站吗php网页设计培训
  • 深圳大型论坛网站建设wordpress国内加速
  • 仿站怎么做广告装饰公司名字
  • 黄冈网站推广收费标准wordpress导航页面设置密码
  • 做网站会犯法吗贵州省建设厅城乡建设网站
  • 做网站和做公众号资金盘网站怎么建设
  • 全国最好的网站建设案例推广方法视频