新闻资讯
【方辉专栏】ARM64体系结构编程与实践学习笔记(五) 异常处理
2022-07-25
摘要: 本文主要对Armv8体系的异常处理的基本概念进行介绍。关键字:Armv8、体系结构、ARM架构、异常处理、中断、复位、同步异常、异步异常1. 异常处理的基本概念异常是任何可能导致当前正在执行的程序暂停并导致状态更改以执行代码来处理该异常的事件。Armv8体系结构将异常分为两大类:同步异常和异步异常。1.1同步异常同步异常是指处理器执行某条指令而直接导致的异常,往往需要在异常处理函数处理该异常之后,处理器才能继续执行。这意味着同步异常与执行流同步。常见的同步异常如下:尝试访问一个异常等级不恰当的寄存器。尝试执行没有定义的指令使用没有对齐的SP尝试执行与PC指针没有对齐的指令。1.2 异步异常异步异常是指异常触发的原因与处理器当前正在执行的指令无关的异常,中断属于异步异常的一种。因此与当前指令流不同步。这意味着无法准确保证何时会发生异步异常。Armv8-A 架构只要求它在有限的时间内发生。也可以暂时屏蔽异步异常。这意味着异步异常可以在发生异常之前处于挂起状态。常见的异步异常包括物理中断和虚拟中断。物理中断是响应于 PE 外部产生的信号而产生的。虚拟中断可以由外部产生,也可以由在 EL2 处执行的软件产生。Arm 架构有两种中断类型,IRQ 和 FIQ。在旧版本的 Arm 架构中,FIQ 被用作更高优先级的快速中断。在Armv8-A 和 Armv9-A 中 FIQ 与 IRQ 具有相同的优先级。IRQ 和 FIQ 具有独立的路由控制,通常用于实现安全和非安全中断。Armv8.8-A 和 Armv9.3-A 添加了不可屏蔽中断 (NMI) 。2. 异常处理及返回当发生异常时,中断当前程序流程。处理元件 (PE) 将更新当前状态并分支到向量表中的某个位置。通常这个位置将包含通用代码,用于将当前程序的状态推送到堆栈上,然后分支到进一步的代码。当发生异常时,必须保留当前状态以便可以返回。PE 会自动保存异常返回地址和当前PSTATE.存储在通用寄存器中的状态必须由软件保存。然后,PE 会将当前更新为PSTATE体系结构中为该异常类型定义的类型,并分支到向量表中的异常处理程序。获取异常的PSTATE位置存储在 System registerSPSR_ELx中,其中 <x> 是获取异常的异常级别的编号。异常返回地址存储在 中ELR_ELx,其中 <x> 是异常被处理到的异常级别。软件可以通过从 AArch64 执行 ERET 指令来启动异常返回。这将根据SPSR_ELx的值配置返回的异常级别,其中 <x> 是返回的级别。SPSR_ELx包含要返回的目标级别和目标执行状态。执行 ERET 指令时,状态将从SPSR_ELx 中恢复,程序计数器将更新为ELR_ELx中的值。+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++关于亿道电子亿道电子技术有限公司(英文名称:Emdoor Electronics Technology Co.,Ltd)是国内资深的研发工具软件提供商,公司成立于 2002 年,面向中国广大的制造业客户提供研发、设计、管理过程中使用的各种软件开发工具,致力于帮助客户提高研发管理效率、缩短产品设计周期,提升产品可靠性。20 年来,先后与 Altium、ARM、Ansys、QT、Adobe、Visu-IT、Minitab、Parasoft、Testplant、IncrediBuild、EPLAN、HighTec、GreenHills、PLS、Ashling、MSC Software 、Autodesk、Source Insight、TeamEDA、Cadence 等多家全球知名公司建立战略合作伙伴关系,并作为他们在中国区的主要分销合作伙伴服务了数千家中国本土客户,为客户提供从芯片级开发工具、EDA 设计工具、软件编译以及测试工具、结构设计工具、仿真工具、电气设计工具、以及嵌入式 GUI 工具等等。亿道电子凭借多年的经验积累,真正的帮助客户实现了让研发更简单、更可靠、更高效的目标。欢迎关注“亿道电子”公众号了解更多研发工具软件知识
查看更多→
赫尔大学使用Parasoft C/C++test进行软件开发教育
2022-07-25
英国赫尔大学(University of Hull)是一个发展个人、社交和学术的综合型研究大学。该校有16000多名学生和大约2500名员工,其中包括1000多名教职员工。在最近一次的全国评估中,计算机科学研究在英国的影响力排名并列第五。专业领域包括计算科学、计算机游戏化、可靠地智能系统、机器人和人工智能、仿真和可视化。在赫尔大学,计算机科学系以培养能够迅速跨越学术界和职场差距的软件开发研究生而闻名。他们做出了即时而有效的贡献。战略与目标高级讲师Warren Viant找到了Parasoft的欧洲销售总监,希望在本科和研究生教学实验室中使用Parasoft的C/C++test。我们的目标是确保学生毕业时能够掌握当今生产软件的公司所使用的软件开发最佳实践。那是近10年前的事了。赫尔大学至今仍在使用Parasoft C/C++test。C/C++软件开发的测试解决方案提供了单元测试、结构代码覆盖和其他编程测试最佳实践。在赫尔大学,Parasoft C/C++test使学生能够全面测试他们的C和C ++应用程序与行业标准,如MISRA, AUTOSAR C ++ 14, CERT等。航空航天、汽车、铁路、医疗、工业和许多其他行业使用这些标准定义的编码规则和指示来帮助生成健壮的代码。这意味着安全、可靠和合规的代码。Warren Viant先生最看重Parasoft C/C ++ test,因为它内置了对他最喜欢的三本书中定义的所有规则的支持:Effective C++More Effective C++C++ Core Guidelines这些书涵盖了在过去20-30年的软件行业C++软件开发中确定的规则和最佳实践,而Parasoft C/C ++ test支持这些规则和最佳实践。Parasoft支持的所有规则和指令都是领先的行业标准,是几十年来来自世界各地最重要的软件开发公司、组件供应商、工程咨询公司和学术界的用户体验和最佳实践的积累。方法赫尔大学使用Parasoft C/C ++ test的学生包括:第二年攻读软件开发理学学士学位那些在工程科学硕士(MSc/孟)项目中追求高级软件工程教育的人。赫尔大学有三个软件开发主题或教育分支:机器人技术(最新分支)标准行业软件开发人员游戏开发商Warren Viant先生教授这三个领域的通用课程,并使用Parasoft C/C ++ test作为C++软件开发入门的一部分。介绍静态代码分析的价值课程中包含Parasoft C/C ++ test的原因之一是静态代码分析给他的学生带来的价值。C/C ++ test静态代码分析工具提供了可定制的规则,并提供了对每个规则的专业解释,以及失败和纠正代码的关键示例。精心挑选的编码规则集与课程相一致,每个学生在开发期间都使用Parasoft C/C ++ test来完成他们的作业。Parasoft C/C ++ test提供的反馈对学生学习C++很有帮助。他们收到的信息准确地解释了为什么代码写得很糟糕,以及如何纠正它的例子。学生的角度来看,Parasoft C/C ++ test为他们的代码提供了自动化的个性化评价——随时随地都可以。如果他们的代码在测试中失败了,他们可以查看关于失败原因的详细解释,以及如何通过单击来修复它。对于教育目的很重要,错误不会自动修复。相反,学生被迫学习每个编码错误存在的原因。它教会他们编程的最佳实践,这样他们在就业时就不会再犯同样的错误。创建健壮的代码对于努力创建健壮代码的学生来说,另一个有趣的学习方面是平衡花在提高代码质量和花在添加额外功能上的时间的技能。在一天结束的时候,Warren Viant先生和赫尔大学正在培养专业的软件开发人员,他们意识到时间就是金钱,并有效地利用他们的时间。赫尔大学的目标是培养出能够作为软件开发人员对工作场所做出有效和直接贡献的毕业生。他越能教育学生代码的正确性,并让他们接触专业的工具集,比如Parasoft C/C++test,对未来的雇主、雇员以及部署在世界各地的庞大产品和软件系统的受益者就越有利。总之,Warren Viant先生对Parasoft的C/C++test及其静态代码分析能力给予了很高的评价和认真的建议,认为它是一种教育工具。他鼓励世界各地的其他大学采用Parasoft的C/C++test,并将其集成到他们的开发模块中。特别是如果他们以赫尔大学部署的方式使用测试工具。Parasoft C/C++test面临的挑战在COVID 19之前,Warren Viant先生在实验室里教大约200名本科生,实验室分为两个区块,每个区有近100名学生。此外,两名工作人员和几名研究生演示人员在实验室提供帮助。即使有一个团队,当他们的工作被标记为编码违规时,也不可能向近100名软件开发学生提供大量的个人反馈。与编译器相比,Parasoft C/C++test提供了如何修复编码违规的建议,这尤其有用。这个功能减轻了许多关于代码正确性的常规问题。让Warren Vian先生有时间在课程中更棘手的领域提供指导。结果Warren Viant先生感谢Parasoft对学术界和软件行业的慷慨和贡献。Parasoft提供了一个真正的工作工具来教育和培养我们未来的软件开发人员,让他们在这个世界上有所作为。毕业生可以在所有需要高质量代码的行业就业:游戏、机器人、汽车、航天、国防、医疗、铁路等等。Parasoft C/C++test与我们的课程一起使用,继续帮助赫尔大学计算机科学系保持培养一些最优秀和最聪明的软件开发人员。下一步行动从一开始就将质量、可靠性和安全性融入到软件开发过程中。联系我们获取《静态分析入门》白皮书。“MISRA”、“MISRA C”及MISRA Consortium Limited的注册商标。©The MISRA Consortium Limited, 2021。保留所有权。(文章来源公众号:Parasoft)+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++关于亿道电子亿道电子技术有限公司(英文名称:Emdoor Electronics Technology Co.,Ltd)是国内资深的研发工具软件提供商,公司成立于 2002 年,面向中国广大的制造业客户提供研发、设计、管理过程中使用的各种软件开发工具,致力于帮助客户提高研发管理效率、缩短产品设计周期,提升产品可靠性。20 年来,先后与 Altium、ARM、Ansys、QT、Adobe、Visu-IT、Minitab、Parasoft、Testplant、IncrediBuild、EPLAN、HighTec、GreenHills、PLS、Ashling、MSC Software 、Autodesk、Source Insight、TeamEDA、Cadence 等多家全球知名公司建立战略合作伙伴关系,并作为他们在中国区的主要分销合作伙伴服务了数千家中国本土客户,为客户提供从芯片级开发工具、EDA 设计工具、软件编译以及测试工具、结构设计工具、仿真工具、电气设计工具、以及嵌入式 GUI 工具等等。亿道电子凭借多年的经验积累,真正的帮助客户实现了让研发更简单、更可靠、更高效的目标。欢迎关注“亿道电子”公众号了解更多研发工具软件知识
查看更多→
【方辉专栏】ARM64体系结构编程与实践学习笔记(四) A64指令集介绍及编码格式
2022-07-22
摘要: 本文主要对A64指令集和编码格式进行介绍。关键字:A64指令集、Armv8、体系结构、ARM架构、 编码格式1. A64指令集介绍指令集是处理器体系结构设计的重点之一。每种新型的架构在设计时就规定了一系列与其硬件电路相配合的指令系统。指令集的先进与否,关系到MCU性能发挥。指令集的完善也是提高微处理器效率的最有效的工具。ARM指令集一直在变化和发展中。Armv8体系结构最大的改变是增加了一个新的64位指令集,这是对原来指令集的有益补充和增强。A64指令集可以处理64位宽的寄存器和数据,并使用64位的指针来访问内存。Armv8架构在AArch64运行状态下使用A64指令集,在AArch32运行状态下使用A32指令集。A64指令集和A32 指令集是不兼容的,它们是两套完全不一样的指令集,它们的指令编码是不一样的。注意:A64指令集的指令宽度是32位,而不是64位;只能运行在AArch64状态下。A64汇编指令需要注意以下4点:A64支持指令助记符和寄存器名称全是大写或全是小写字母。使用立即数操作时,立即数前面可以加“#”,也可以不加。“//”用于注释汇编代码。通用寄存器前面的“W”表示寄存器低32位,“X”表示64位通用寄存器。A64指令集分类:内存加载和存储指令多字节内存加载和存储指令算术和移位指令移位操作指令位操作指令条件操作指令跳转指令独占访问指令内存屏蔽指令异常处理指令2. A64指令编码格式A64指令集中每条指令的宽度为32位,其中第25-28位用来识别指令的分类,如下图所示:A64指令集支持64位宽的数据和地址寻址,为什么指令的编码宽度只有32位?因为A64指令集基于寄存器加载和存储的体系结构设计,所有的数据加载、存储以及处理都是在通用寄存器中完成的。ARM64一共有31个通用寄存器,即X0-X30,因此在指令编码中使用5位宽度,这样可以索引32个通用寄存器。例如立即数加载指令格式:LDR <Xt> , [ <Xn|SP> ], # <simm>第0-4位为Rt字段,用来描述目标寄存器Xt,可以从X0-X30中选择。第5-9位为Rn字段,用来描述基地址寄存器Xn,可以从X0-X30中选择。也可以选择SP寄存器为第31个寄存器。第12-20位为imm9字段,用于偏移量simm.第21-29位用于指令分类。第30-31位为size字段,当为“11”时表示64位数据宽度,当为“10”时表示32位。+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++关于亿道电子亿道电子技术有限公司(英文名称:Emdoor Electronics Technology Co.,Ltd)是国内资深的研发工具软件提供商,公司成立于 2002 年,面向中国广大的制造业客户提供研发、设计、管理过程中使用的各种软件开发工具,致力于帮助客户提高研发管理效率、缩短产品设计周期,提升产品可靠性。20 年来,先后与 Altium、ARM、Ansys、QT、Adobe、Visu-IT、Minitab、Parasoft、Testplant、IncrediBuild、EPLAN、HighTec、GreenHills、PLS、Ashling、MSC Software 、Autodesk、Source Insight、TeamEDA、Cadence 等多家全球知名公司建立战略合作伙伴关系,并作为他们在中国区的主要分销合作伙伴服务了数千家中国本土客户,为客户提供从芯片级开发工具、EDA 设计工具、软件编译以及测试工具、结构设计工具、仿真工具、电气设计工具、以及嵌入式 GUI 工具等等。亿道电子凭借多年的经验积累,真正的帮助客户实现了让研发更简单、更可靠、更高效的目标。欢迎关注“亿道电子”公众号了解更多研发工具软件知识
查看更多→
Altium Designer 22.7.1 版本发布,新功能说明
2022-07-22
PCB设计改进支持助焊层输出中的变量如果您的设计包括带有“不装配”元件的变量,这些元件的焊盘上不再有助焊层。所有助焊层输出类型均已更新以支持此功能。助焊层(深灰色)会自动排除不装配元件在Edit Project Variant对话框中使用新的Allow variation for paste mask选项,启用/禁用配置中变量的助焊层输出。能够更改调谐对象层属性您现在可以在Properties属性面板使用Properties区域中的新Layer下拉菜单来更改调谐对象的层(手风琴“Accordion”、长号“Trombone”和锯齿“Sawtooth”型),如以下手风琴“Accordion”对象的示例所示。数据管理改进SSH到HTTPS中央存储库连接当将更改推送到外部GIT VCS下的项目,或使此类项目在线可用,而其设计所在的中央存储库使用SSH协议进行连接(Altium Designer不支持)时,现在您可以选择尝试更新中央存储库,使用受支持的HTTPS连接协议(前提是中央存储库支持该协议)。输出注释PDF增强已对输出注释PDF报告进行了多项改进。报告的方向进行了调整,提供更佳的可读性。项目名称和ID以及新增的文档名称为活动链接,可点击打开Altium 365网络浏览器。添加了新的Assignee和Status列,显示有关注释的更多信息。可操作软锁状态当多个用户正在编辑作为工作区项目一部分的相同“软锁”文档时,项目面板中会出现相关的冲突状态图标。在此版本中,软锁功能提供的冲突状态图标现在可以操作。您可以单击图标通过恢复编辑来解决冲突。要了解有关实时冲突预防的更多信息,请参阅协作者可视化和冲突预防页面的冲突预防部分禁用中央存储库结构验证由于无法向SVN中央存储库提交,存储库验证功能已被禁用。该功能将在未来的版本中得到改进和恢复。禁用可操作的VCS状态图标提供改进的文档VCS状态的功能目前已被禁用(默认情况下)。简要概述,此功能将项目面板中项目文档的VCS图标转换为活动控件,单击这些控件可以访问更多特定信息,以及执行适用操作的命令。如果您还没有体验到对性能的影响,您可以再次启用此功能。如需使用此功能,可以在Advanced Settings对话框中启用UI.ActionableDocumentStatuses选项。平台改进在分组选项卡中按字母顺序对文档进行排序当大量的文档打开时,会按文档类型分组,或者使用Preferences对话框的System - View页面上的Group documents by kind选项按项目分组。在此版本中,文档列表按字母顺序排序。当在System - View页面上启用By document kind选项时,文档将按字母顺序排序。启用By Project选项后,文档将在文档类型中按字母顺序排序。下图示例显示了按字母顺序排列的原理图文档分组。此功能处于公开测试阶段,如需使用,请在Advanced Settings对话框中启用UI.DocumentTabDropdownSorting 选项Draftsman改进能够在Draftsman文档中添加和编辑注释此版本添加了在Draftsman文档中创建和编辑注释的功能,类似于原理图和PCB文档中的现有功能。您可以通过以下方式创建注释:单击Comments and Tasks面板中的可用按钮+Comment。在设计空间的右上角附近单击+。使用主菜单中的Place » Comment命令。此功能处于公开测试阶段,如需使用,请在Advanced Settings对话框中启用Draftsman.Comments选项。电路仿真改进为无模型元件自动分配仿真模型您可以使用该功能自动将仿真模型分配给无模型元件。如需使用此功能,请在仿真控制面板Verification阶段下的Components without Models区域中单击Assign Automatically。搜索将在以下来源依次执行:1.本地- 本地存储的模型,位于Preferences对话框的Simulation – General页面的“Model path”字段中定义的路径中。2.库–Available File-based Libraries对话框的Installed选项卡上列出的已安装库。3.服务器- 来自连接工作区的仿真模型。4.Octopart - 云库中提供的仿真模型。找到的模型将分配给元件,并在元件和仿真模型之间自动映射引脚。自动分配的结果显示在仿真控制面板中。如果无法将仿真模型正确映射到元件,则该元件将列在仿真控制面板中具有部分指定模型条目的元件下。您可以单击元件的Edit Model链接,打开Sim Model对话框并编辑管脚映射。此功能处于公开测试阶段,如需使用,请在Advanced Settings对话框中启用Simulation.ModelAutoAssign选项。快速访问仿真通用元件在此版本中,您现在可以从Simulate主菜单快速访问最常用的仿真通用元件(电阻、电容器、晶体管等)。您也可以在Mixed Sim工具栏上找到这些命令。(文章来源公众号:Altium)+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++关于亿道电子亿道电子技术有限公司(英文名称:Emdoor Electronics Technology Co.,Ltd)是国内资深的研发工具软件提供商,公司成立于 2002 年,面向中国广大的制造业客户提供研发、设计、管理过程中使用的各种软件开发工具,致力于帮助客户提高研发管理效率、缩短产品设计周期,提升产品可靠性。20 年来,先后与 Altium、ARM、Ansys、QT、Adobe、Visu-IT、Minitab、Parasoft、Testplant、IncrediBuild、EPLAN、HighTec、GreenHills、PLS、Ashling、MSC Software 、Autodesk、Source Insight、TeamEDA、Cadence 等多家全球知名公司建立战略合作伙伴关系,并作为他们在中国区的主要分销合作伙伴服务了数千家中国本土客户,为客户提供从芯片级开发工具、EDA 设计工具、软件编译以及测试工具、结构设计工具、仿真工具、电气设计工具、以及嵌入式 GUI 工具等等。亿道电子凭借多年的经验积累,真正的帮助客户实现了让研发更简单、更可靠、更高效的目标。欢迎关注“亿道电子”公众号了解更多研发工具软件知识
查看更多→
【方辉专栏】ARM64体系结构编程与实践学习笔记(三) Cortex-A72处理器介绍
2022-07-21
摘要: 本文主要介绍了Cortex-A72处理器的基本构成。关键字:Cortex-A72、Armv8、体系结构、ARM架构、处理器 1. Cortex-A72处理器特性Cortex-A72处理器是Armv8-A架构下的一款高性能、低功耗的处理器。它最多支持4个内核,内置L1和L2高速缓存。Cortex-A72处理器具有以下特性:采用Armv8体系结构规范来设计,ARMv8-A 架构配置文件的完整实现。超标量处理器设计,支持乱序执行的流水线。使用分支目标缓冲区(Branch Target Buffer,BTB)、全局历史缓冲区( Global History Buffer,GHB)、返回堆栈及间接预测器进行动态分支预测。48项全关联L1指令转换后备缓冲区(Translation Lookaside Buffer,TLB),可以支持4KB/64KB及1MB大小的页面。32项全关联L1数据转换后备缓冲区,可以支持4KB/64KB及1MB大小的页面。每个处理器内核含有4路关联的1024项的L2转换后备缓冲区。48K的L1指令缓存和32K的L1数据缓存。可配置为512K/1M/2M/4M的L2共享缓存基于AMBA4总线协议的高级可扩展接口的一致性扩展[AXI(Advanced eXtensible Interface) Coherency Extensions ,ACE]或一致性集线接口 (Coherent Hub Interface,CHI)支持 PMUv3 架构的性能监控单元(Performance Monitor Unit,PMU)支持多处理器调试的CTI(Cross Trigger Interface )支持通用中断控制器GIC(Generic Interrupt Controller)支持多电源域(power domain)的电源管理。2. Cortex-A72处理器组成框图:2.1指令预取单元指令预取单元从L1指令高速缓存中提取指令,并在每个周期将多达3个指令传送到指令解码单元。它支持动态和静态分支预测。指令预取单元由如下部分组成:L1指令高速缓存:48K3路关联高速缓存,64字节高速缓存双位奇偶校验。48项全关联L1指令后备缓冲区(TLB)。静态分支预测器间接预测器返回堆栈缓冲器2.2指令译码单元指令解码单元支持A32/T32/A64和高级SIMD及浮点指令集。指令解码单元还执行寄存器重名,通过消除写后写(WAW)和读后写(WAR)的冲突来实现乱序执行。2.3指令分配单元指令分配单元控制译码后的指令何时被分配到执行流水线以及返回的结果何时终止。组成:ARM核心通用寄存器SIMD和浮点寄存器集AArch32 CP15 和AArch64系统寄存器2.4 加载/存储单元加载/存储单元(LSU)执行加载和存储指令,包含L1数据存储系统,并为L2内存子系统的内存一致性请求提供服务。组成:32K两路组关联的L1高速缓存,缓存行为64字节。支持32个全关联的数据后备缓存区(TLB)自动硬件预取器,生成针对L1数据缓存和L1缓存的预取。2.5 L1内存系统L1内存系统保留指令内存系统和数据内存系统。2.6 MMU内存管理单元MMU用来实现虚拟地址到物理地址的转换。在AArch64状态下支持长描述符的页表格式,支持不同大小的页面。例如4KB/16KB/64KB。2.7 L2 内存系统L2内存系统不仅负责处理每个处理器内核的L1指令和数据缓存仲裁,还通过一致性扩展(ACE) 或 一致性集线接口(CHI)连接到内存系统。+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++关于亿道电子亿道电子技术有限公司(英文名称:Emdoor Electronics Technology Co.,Ltd)是国内资深的研发工具软件提供商,公司成立于 2002 年,面向中国广大的制造业客户提供研发、设计、管理过程中使用的各种软件开发工具,致力于帮助客户提高研发管理效率、缩短产品设计周期,提升产品可靠性。20 年来,先后与 Altium、ARM、Ansys、QT、Adobe、Visu-IT、Minitab、Parasoft、Testplant、IncrediBuild、EPLAN、HighTec、GreenHills、PLS、Ashling、MSC Software 、Autodesk、Source Insight、TeamEDA、Cadence 等多家全球知名公司建立战略合作伙伴关系,并作为他们在中国区的主要分销合作伙伴服务了数千家中国本土客户,为客户提供从芯片级开发工具、EDA 设计工具、软件编译以及测试工具、结构设计工具、仿真工具、电气设计工具、以及嵌入式 GUI 工具等等。亿道电子凭借多年的经验积累,真正的帮助客户实现了让研发更简单、更可靠、更高效的目标。欢迎关注“亿道电子”公众号了解更多研发工具软件知识
查看更多→
三伏天连续发布高温预警,天气预报是否可信?Minitab 用数据告诉你!
2022-07-21
您是否依赖天气预报?人们通过查询天气预报来确定其活动、衣着或旅行打包内容。但是,这些预报真的可靠吗?还是说只是夸夸其谈?您可以使用 Minitab Statistical Software 中的“协助”来确定天气预报的准确度。动手试试数据集为某地未来 30 天内每一天相对应的第二天、未来 5 天和未来 10 天的预报高温(用华氏度表示)。数据表还包括每天的实际高温,以及预报高温和实际高温之差。1、查看数据对数据进行图形化始终是很好的起点。选择协助 > 图形分析…,获得通过哪些图形可以深入了解此数据的指导。“协助”提供了三个可供选择的目标。您正在调查预报高温与实际高温的匹配程度。这些数据按照发生顺序进行记录,因此,对随时间变化的变量进行图形化可能非常有用。选择“时间序列图”。由于每种类型的预报都在各自的列中,因此请选择“Y 数据在多列中”。然后,输入与三个预报中的每个预报相对应的列,以及列出实际温度的列。单击“确定”,Minitab 将生成用于解决此分析假设的报告卡、用于帮助识别数据模式的诊断报告,以及下面的汇总报告。如果预报高温与实际高温一致,则时间序列图上的四条线将在从左到右延伸时紧密贴近。但它们没有。有时,这些点离得很近,但又会经常突然离得很远。通常,表示未来 10 天预报高温的蓝线与表示实际高温的紫线离得特别远。第二天的预报高温似乎与实际高温最为接近。2、检验假设时间序列图表示,第二天、未来 5 天和未来 10 天的预报可靠度不同。为了比较这三个预报并查看数据是否支持此假设,请使用协助 > 假设检验...如果您无法确定要用于分析数据的检验,请让“协助”引导您做出正确的选择。由于这些数据表示三种类型的预报,因此您希望比较两个以上的样本。如果您选择“请帮我选择”,则可以按照决策树做出正确选择。由于此温度数据是连续的,而且您需要比较两个以上的样本,因此决策树会引导您使用单因子方差分析。按如下所示填写单因子方差分析的对话框,然后单击“确定”:“协助”的汇总报告清楚地说明,“均值之间存在显著差异 (p < 0.05)”。均值比较图显示,未来 10 天的预报准确度显著低于第二天的预报准确度,而未来 5 天的预报与第二天的预报的准确度似乎相等。“协助”还提供报告卡,报告卡针对分析假设来检查数据并就任何可能的问题向您发出警报,由此您可以确定结果可靠。报告卡已经将一个数据点标记为异常。但是,在检查此数据点后发现它是准确的,因此应将其保留在分析中。报告卡还确认样本数量已大到足以检测差值和满足正态性假设。您已完成了此分析!分析表明,如果您打算靠天气预报来决定要穿什么衣服,则第二天的预报或甚至未来 5 天的预报是最可靠的选项。当然,天气是一个极为复杂且多变的过程,而且此数据仅涵盖一个位置中 30 天的信息。您所在地区未来 30 天的预报结果会一样吗?现在,您已了解如何使用“协助”来确定天气预报的准确度!通过使用“协助”分析数据,还可以发现什么内容?(文章来源公众号:Minitab)+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++关于亿道电子亿道电子技术有限公司(英文名称:Emdoor Electronics Technology Co.,Ltd)是国内资深的研发工具软件提供商,公司成立于 2002 年,面向中国广大的制造业客户提供研发、设计、管理过程中使用的各种软件开发工具,致力于帮助客户提高研发管理效率、缩短产品设计周期,提升产品可靠性。20 年来,先后与 Altium、ARM、Ansys、QT、Adobe、Visu-IT、Minitab、Parasoft、Testplant、IncrediBuild、EPLAN、HighTec、GreenHills、PLS、Ashling、MSC Software 、Autodesk、Source Insight、TeamEDA、Cadence 等多家全球知名公司建立战略合作伙伴关系,并作为他们在中国区的主要分销合作伙伴服务了数千家中国本土客户,为客户提供从芯片级开发工具、EDA 设计工具、软件编译以及测试工具、结构设计工具、仿真工具、电气设计工具、以及嵌入式 GUI 工具等等。亿道电子凭借多年的经验积累,真正的帮助客户实现了让研发更简单、更可靠、更高效的目标。欢迎关注“亿道电子”公众号了解更多研发工具软件知识
查看更多→
【方辉专栏】ARM64体系结构编程与实践学习笔记(二) Armv8寄存器
2022-07-20
摘要: 本文主要介绍了Armv8寄存器都有哪些。关键字:ARM64、Armv8、体系结构、ARM架构、通用寄存器、特殊寄存器 1. 通用寄存器AArch64 执行状态支持31个64位的通用寄存器,分别是X0-X30;如果使用Xn(如X0,X1,X2...)表示64位寄存器,如果使用Wn(如W0,W1,W2...)表示Xn寄存器的低32位数据。AArch32 执行状态支持16个32位的通用寄存器。通用寄存器在函数调用过程中起到特殊作用。在ARM64体系结构的过程调用标准(Procedure Call Standard,PCS)中进行了规定。PCS 定义哪些寄存器可以被破坏,哪些寄存器不能被破坏。如果寄存器可能损坏,则调用的函数可以覆盖而无需恢复,具体规则如下表所示:例如一个函数foo(),被main()调用函数foo()可以使用的寄存器,且不需要保存的寄存器是X0-X15,但如果foo()要使用X19-X28必须先将杨保存到堆栈中,然后在返回之前从堆栈中恢复。XR(X8)寄存器,是一个间接结果寄存器。如果返回一个结构体,那么foo()中结构体的内存将又调用者分配,指向调用者分配的用于返回结构体的内存指针。IP0-IP1这些寄存器是过程调用中可以被破坏的寄存器,这些寄存器在函数被调用和执行调用函数第一条指令之间这段时间被破坏。链接器使用这些寄存器在调用者和被调用者之间插入胶合代码。最常见使用胶合代码的例子是A64的分支指令如果目标超出范围,则链接器需要生成一个胶合代码来扩展分支的范围。FP(X29)帧指针。LR(X30)函数调用链接寄存器。1. 处理器状态AArch64体系结构使用PSTAE(Processor state)寄存器来表示当前处理器状态。2.1数据处理标志位N:负数标志位,一个二进制补码,结果为负数则N=1;否则N=0;Z:零标志位,如果结果为零,则Z=1;否则Z=0;C:进位标志位,如果结果有进位,则C=1;否则C=0;V:溢出标志位,如果结果有溢出,则V=1;否则V=0;2.2异常掩码标志位D:调试异常掩码位。A:系统错误屏蔽位。I:IRQ屏蔽位。 F:FIQ屏蔽位。以上标志位,当为0是表示不屏蔽这个异常,当为1时表示屏蔽这个异常。2.3运行状态SS:软件单步。该位为1,表示在异常处理时使能了软件单步功能。IL:非法执行状态位。EL:当前异常等级。0:表示EL0;1:表示EL1;2:表示EL2;3:表示EL3;nRW:当前执行状态。0:表示AArch64;1:表示AArch32;SP:堆栈指针选择寄存器。0:表示选择SP0;1:表示SPx;2. 特殊寄存器3.1 零寄存器零寄存器顾名思义,这些寄存器的内容全是0,可以用做源寄存器,也可以用作目标寄存器。WZR是32位的零寄存器,XZR是64位的零寄存器。3.2 PC(Program Counter)程序指针寄存器PC指针寄存器通常用来指向当前运行指令的下一条指令的地址,用于控制程序中指令的运行顺序,但编程人员不能通过指令来直接访问。3.3 SP(Stack Pointer)堆栈指针寄存器Armv8体系结构支持4个异常等级,每个等级都有一个专门的SP寄存器SP_ELn.SP_EL0: EL0 下的栈指针寄存器SP_EL1: EL1 下的栈指针寄存器SP_EL2: EL2 下的栈指针寄存器SP_EL3: EL3 下的栈指针寄存器3.4 SPSR(Saved Program Status Register)备份程序状态寄存器当我们运行一个异常处理程序时,处理器会把PSTATE寄存器的值暂时保存在备份程序状态寄存器(SPSR)里,当异常处理完成并返回时,再把SPSR的值恢复到PSTATE寄存器。3.5 ELR(Exception Link Register)异常链接寄存器ELR用于存放异常返回地址。3. 系统寄存器系统寄存器用于配置处理器和控制系统,例如MMU和异常处理。数据处理或加载/存储指令不能直接使用系统寄存器。需要将系统寄存器的内容读入X寄存器,对其进行操作,然后再写回系统寄存器。+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++关于亿道电子亿道电子技术有限公司(英文名称:Emdoor Electronics Technology Co.,Ltd)是国内资深的研发工具软件提供商,公司成立于 2002 年,面向中国广大的制造业客户提供研发、设计、管理过程中使用的各种软件开发工具,致力于帮助客户提高研发管理效率、缩短产品设计周期,提升产品可靠性。20 年来,先后与 Altium、ARM、Ansys、QT、Adobe、Visu-IT、Minitab、Parasoft、Testplant、IncrediBuild、EPLAN、HighTec、GreenHills、PLS、Ashling、MSC Software 、Autodesk、Source Insight、TeamEDA、Cadence 等多家全球知名公司建立战略合作伙伴关系,并作为他们在中国区的主要分销合作伙伴服务了数千家中国本土客户,为客户提供从芯片级开发工具、EDA 设计工具、软件编译以及测试工具、结构设计工具、仿真工具、电气设计工具、以及嵌入式 GUI 工具等等。亿道电子凭借多年的经验积累,真正的帮助客户实现了让研发更简单、更可靠、更高效的目标。欢迎关注“亿道电子”公众号了解更多研发工具软件知识
查看更多→
Ansys解决方案助力航空航天与国防客户提高能效并显著减少排放
2022-07-20
在范保罗国际航展的Ansys展位,可以了解到仿真解决方案如何改进动力系统、设计效率和安全技术,同时减少排放和噪声污染主要亮点Ansys行业领先的仿真工具助力航空航天与国防行业基础与新兴领域的尖端技术开发,同时减少原型制作成本、设计失误和风险Ansys仿真专家将在范保罗国际航展上,展示数字化转型为航空航天与国防产业带来的优势Ansys 行业领先的仿真解决方案支持航空航天与国防(A&D)产业实现数字化转型,助力民用和军用领域以速度、敏捷性和预测准确性应对前所未有的挑战。在即将于7月18-22日在英国汉普郡举行的范保罗国际航展上,Ansys将重点展示仿真如何以低成本实现更智能的创新解决方案。Ansys将与近1,500家参展商共同亮相范保罗国际航展,重点展示其综合全面的仿真产品组合如何在基础和新兴工程领域推进航空航天与国防产业发展,同时减少物理原型制作成本、设计失误和风险。专家们将通过安全可持续的航空、战略防御能力、未来旅客出行、新一代太空探索、劳动力能力提升计划等案例来展现仿真的收益。凭借基于物理的流体、电子、数字任务工程等软件,全球航空航天与国防企业都在利用Ansys技术开发各类更出色、更快速、更清洁的解决方案,包括开发高超音速防御技术、电磁频谱弹性,以及高效氢推进系统。在范保罗国际航展的Ansys展位,可以了解到仿真解决方案如何提高动力系统、设计效率和安全技术,同时减少排放和噪声污染Electroflight技术总监Douglas Campbell表示:“在Electroflight,我们的工程师利用Ansys仿真进行结构分析、热管理和最佳材料选择,从而让425kg的电池组实现90%的能源效率。通过这样集成Ansys的多物理场仿真解决方案,我们将继续开发高效可持续的飞机,同时实现能耗、推力与升力的良好平衡。”Ansys的材料属性数据库和选择工具,支持从设计流程开始阶段就选择可持续材料,以此帮助提升效率。除了基于物理的仿真解决方案,Ansys还通过可靠的嵌入式控制软件保障航空网络安全,有助于确保飞机系统的安全,并降低网络攻击的风险。Ansys全球销售和客户卓越副总裁Walt Hearn表示:“Ansys提供的先进解决方案囊括了仿真工具、先进求解器、专用仿真流程和数据管理功能,有助于推动整个航空航天与国防产业的数字化转型,能够充分满足嵌入式软件和数字任务工程应用等众多需求。我们很荣幸能够参加范保罗国际航展,展示业界领先的Ansys解决方案,以让更多企业能够从我们的领先技术中大获裨益。”(文章来源公众号:Ansys)+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++关于亿道电子亿道电子技术有限公司(英文名称:Emdoor Electronics Technology Co.,Ltd)是国内资深的研发工具软件提供商,公司成立于 2002 年,面向中国广大的制造业客户提供研发、设计、管理过程中使用的各种软件开发工具,致力于帮助客户提高研发管理效率、缩短产品设计周期,提升产品可靠性。20 年来,先后与 Altium、ARM、Ansys、QT、Adobe、Visu-IT、Minitab、Parasoft、Testplant、IncrediBuild、EPLAN、HighTec、GreenHills、PLS、Ashling、MSC Software 、Autodesk、Source Insight、TeamEDA、Cadence 等多家全球知名公司建立战略合作伙伴关系,并作为他们在中国区的主要分销合作伙伴服务了数千家中国本土客户,为客户提供从芯片级开发工具、EDA 设计工具、软件编译以及测试工具、结构设计工具、仿真工具、电气设计工具、以及嵌入式 GUI 工具等等。亿道电子凭借多年的经验积累,真正的帮助客户实现了让研发更简单、更可靠、更高效的目标。欢迎关注“亿道电子”公众号了解更多研发工具软件知识
查看更多→