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

h5响应式网站上海构建自己网站

h5响应式网站上海,构建自己网站,合肥移动网站建设,wordpress水印插件最近这三年的工作时间大部分的工作#xff0c;都是基于riscv的cpu和接口ip开发适配驱动#xff0c;时不时的就要debug测试代码#xff0c;面对很多都是汇编#xff0c;所以也是整理下积累的一点点笔记#xff0c;系列博客将总结下riscv相关的内容#xff0c;一是给有需要…最近这三年的工作时间大部分的工作都是基于riscv的cpu和接口ip开发适配驱动时不时的就要debug测试代码面对很多都是汇编所以也是整理下积累的一点点笔记系列博客将总结下riscv相关的内容一是给有需要的人一点点帮助另外给自己梳理下方便日后查阅。 虽然现在大部分的程序都不在使用汇编但是在一些特殊场景下底层驱动、引导程序、高性能算法库等等汇编还是扮演着重要作用。对于嵌入式驱动开发虽然可能不要求熟练的coding汇编但是至少做到能够看懂理解和编写一些简单的汇编程序。 先从汇编最基础的概念以及相关的知识开始简单了解后续慢慢会继续更新完善。 1 riscv简介 1.1 ISA ISA (Instruction Set Architecture) 指令集架构可以说是CPU的灵魂是软硬件之间的桥梁定义了指令集指令类型和编码、寻址方式、数据类型、存储模型、系统模型中断、异常、特权等级等、软件可见的处理器状态通用寄存器、PC、处理器状态等。 1.2 CISC和RISC 指令集架构主要分为 复杂指令集Complex Instruction Set Computer精简指令集 Reduced Instruction Set Computer, RISC CISC与RISC的区别如下 VS复杂指令集CISC精简指令集RISC指令数量多少指令系统复杂度复杂简单指令长度变长不固定等长固定寻址方式多少指令格式多少且规整各指令使用频率相差很大相差不大指令执行时间相差很大相差不大指令周期多周期为主单周期为主流水线技术大部分指令在一个机器周期完成cpu寄存器数量少多增加寄存器以减少访存指令并行性低高可访存指令不加限制只有load/store等访存指令才能访问内存减少了访存周期优化编译实现很难较容易依靠编译程序的优化来更有效的支持高级语言代表架构x86ARMMIPSPowerPCLoongArchRISC-V等 目前主流的CISC就是x86而RISC的代表则是ARM。 这里介绍的RISC-V是第5代精简指令集也时属于RISC阵营一员RISC-V架构主要由美国加州大学伯克利分校简称伯克利的Krste Asanovic 教授、Andrew Waterman 和Yunsup Lee等开发人员于2010年发明并且得到了计算机体系结构领域的泰斗David Patterson 的大力支持。 另外RISC-V英文读作“ risk-five是一种全新的指令集架构。“V”包含两层意思 一是这是Berkeley 从RISC I开始设计的第五代指令集架构 二是它代表了变化 Variation 和向量 Vectors 。 关于RISC-V更多的介绍以及其他ISA的介绍感兴趣自行搜索学习了解。 这里有一点主观观点要说一下——未来RISC-V一定会越来越好可以学习了来评论区讨论下就不具体展开啦。 1.3 march 1.3.1 RISC-V指令架构有以下特点 完全开放指令简单模块化设计易于扩展 RISC-V 的指令集使用模块化的方式进行组织每一个模块使用一个英文字母来表示。正是由于RISC-V模块化特点RISC-V架构也有一套命名标准来描述当前CPU所支持指令集比如RV32I、RV64G、RV32IMA这样。 1.3.2通用的命名格式 如下 RV[n][I/F/D/Q/M/C/A/B/E/H/K/V/P/J/T/N]其中 RV代表这是RISC-V指令集n代表当前指令集是几位的32位还是64位后面的是指令集模块模块含义如下表格 module nameclassdescriptionRV32I基础指令整数指令包含算法、分支、逻辑、访存指令有32个32位寄存器。能寻址32位地址空间RV64I基础指令整数指令包含算法、分支、逻辑、访存指令有32个64位寄存器。能寻址64位地址空间RV128I基础指令整数指令包含算法、分支、逻辑、访存指令有32个128位寄存器。能寻址128位地址空间RV32E基础指令与RV32I一样只不过只使用前16个0~1532位寄存器M扩展指令包含乘法、除法、取模求余指令F扩展指令单精度浮点指令D扩展指令双精度浮点指令Q扩展指令四倍精度浮点指令A扩展指令原子操作指令比如比较并交换读改写等指令C扩展指令压缩指令单指令长度为16位主要用于改善程序大小P扩展指令单指令多数据Packed-SIMD指令B扩展指令位操作指令K扩展指令密码运算扩展指令集KeyV扩展指令可伸缩矢量扩展指令集VectorT扩展指令事务内存指令集Transactional MemoryH扩展指令支持Hypervisor管理指令J扩展指令支持动态翻译语言指令L扩展指令十进制浮点指令N扩展指令用户中断指令G通用指令包含I、M、A、F、D 指令 以上模块的一个特定组合“ IMAFD ”也被称为“通用”组合用英文字母G 表示。因此RV32G 表示RV32IMAFD 同理RV64G 表示RV64IMAFD 。通过以上的模块化指令集能够选择不同的组合来满足不同的应用。例如追求小面积、低功耗的嵌入式场景可以选择使用RV32EC 架构而大型的64 位架构则可以选择RV64G 2 RISC-V寄存器 在RISC-V 架构中寄存器组主要包括通用寄存器General Purpose Registers 和控制状态寄存器 Control and Status Register, CSR。 2.1 通用寄存器组 RISC-V架构通用寄存器设计规范包括 基础整数指令集寄存器配置 a、标准配置I扩展集: RISC-V基础指令集架构默认配置32个整数寄存器组编号为x0至x31。其中x0寄存器具有硬连线常数0特性写入操作无效读取始终返回0值其余31个寄存器x1-x31为全功能通用寄存器。 b、寄存器位宽定义 架构通过XLEN参数声明寄存器物理位宽 RV32I架构XLEN32寄存器采用32位存储单元 RV64I架构XLEN64寄存器扩展为64位存储空间 嵌入式场景优化配置 精简配置E扩展集 面向资源敏感型嵌入式场景架构提供寄存器组精简方案 寄存器数量缩减至16个x0-x15x0寄存器仍保持零值特性仅支持RV32E架构强制限定XLEN32 浮点运算扩展配置 浮点寄存器组当系统启用单精度F扩展或双精度D扩展浮点指令时 新增独立浮点寄存器组f0-f3132个浮点寄存器支持标量运算操作寄存器位宽随浮点标准动态调整F扩展对应32位D扩展对应64位 另外为提升代码可读性汇编器支持寄存器功能别名映射。寄存器别名系统 例如x0 → zero零值寄存器x1 → ra返回地址寄存器x2 → sp栈指针寄存器 等整体汇总如下 registerABI namedescriptionSaverx0zeroHard-wired zero常数0x1raReturn addresscallerx2spStack pointercalleex3gpGlobal pointer-x4tpThread pointer-x5t0Temporary/alternate link registercallerx6-7t1-2Temporariescallerx8s0/fpSaved register/frame pointercalleex9s1Saved registercalleex10-11a0-1Function arguments/return valuescallerx12-17a2-7Function argumentscallerx18-27s2-11Saved registerscalleex28-31t3-6Temporariescallerf0-7ft0-7FP temporariescallerf8-9fs0-1FP saved temporariescallerf10-11fa0-1FP arguments/return temporariescallerf12-17fa2-7FP arguments temporariescallerf18-27fs2-11FP saved temporariescallerf28-31ft0-11FP temporariescaller 其中 ABIApplication Binary InterfaceCaller 调用者Callee : 被调用函数【这里可以视为在 Caller (函数)中调用 Callee (函数)】 Caller 维护的寄存器在运行被调函数前不会被保存函数返回时这些寄存器可能会被改变所以在调用前由 Caller 保存维护。Callee 维护的寄存器在运行被调函数前会被保存函数返回后这些寄存器与运行被调函数前相同。 2.2 CSR寄存器 RISC-V 的架构中定义了一些控制和状态寄存器 Control and Status Register, CSR 基础特性 专用地址空间独立编址的12位地址域0x000-0xFFF通过csrrw/csrrs等专用指令访问特权级关联寄存器访问权限与特权模式Machine/Supervisor/User强关联部分CSR需特定权限操作功能范畴系统配置、异常处理、性能监控、调试支持 主要寄存器分类 机器模式核心CSR mstatus (0x300)全局状态控制中断开关、特权模式栈mtvec (0x305)异常处理入口基址寄存器mepc/mcause (0x341/0x342)异常返回地址与原因编码mip/mie (0x344/0x304)中断状态与使能位图 计时与计数单元 mcycle/minstret (0xB00/0xB02)时钟周期与指令执行计数器mcountinhibit (0x320)性能计数器启停控制 调试支持单元 dcsr/dpc (0x7B0/0x7B1)调试模式控制与断点PC存储 扩展功能关联 浮点扩展fcsr (0x003) 聚合浮点状态向量扩展vcsr (0x008) 配置向量参数用户级只读cycle/time (0xC00系列) 访问控制机制 权限隔离用户模式仅可访问非特权CSR如ustatus原子操作提供csrrw写后读、csrrc位清除等原子指令影子寄存器部分CSR如stvec在不同特权级拥有独立副本 参考 指令集架构知识汇总riscv-spec-20240411.pdf胡振波 手把手教你设计CPU跟我学RISC-V】一认识RISC-V指令集并搭建实验环境
http://www.dnsts.com.cn/news/24291.html

相关文章:

  • 哪些网站用wordpress线上做网站赚钱
  • 常用网站建设技术简单网页制作成品和代码
  • 的网站建立百家号关键词排名
  • 以个人名义可以做网站吗wordpress打赏积分
  • 电脑系统下载官方网站广州市口碑seo推广
  • 做网站要多大空间顺德建网站的公司
  • 专门做婚纱儿童摄影网站单页企业网站模板
  • 网站登录 效果代码亚马逊怎么做网站推广
  • 招聘设计师去哪个网站wordpress编辑器无法实现随意排版
  • 常州装修网站建设公司网站开发的项目开发
  • 哪个网站免费做简历响应式布局与自适应布局区别
  • 新网站做seo 的效果cpa推广联盟
  • 网站架构招聘深圳网站优化费用
  • 江苏省网站备案查询杭州软件制作
  • 网站设计分析报告网站开发方案ppt
  • 怎么做点图片连接网站行业网站建设深圳公司
  • 长葛网站制作南宁网站推广优化
  • 有没有专门做售楼部包装的网站网上商城怎么推广
  • 网站运营如何做广州游戏软件开发公司有哪些
  • 如何做一个企业的网站小程序开店流程
  • 网站开发建设合同建立一个网站平台需要多少钱
  • 申请注册网站域名.商城网站建设发言材料
  • 建手机网站要多少钱回兴网络推广软件
  • 在阿里巴巴网站上怎么做贸易伊宁网站建设优化
  • 网站一直没收录门户网站建设工作总结
  • vue配合什么做网站比较好免费响应式网站模板
  • 如何查看网站图片尺寸房地产营销网站建设
  • 网站开发标书怎么写做图文网站要什么配置的服务器
  • 网站关键词没被搜出来没有网站可以域名备案
  • ps做的网站首页iis7新建网站