• Arm Cortex-R52+增强时间关键型汽车设计

    近日,Arm发布了Arm® Cortex®-R系列的最新产品Cortex-R52+,可支持汽车电子设计的演变,帮助汽车研发人员在巨大的压力下,达成汽车设计的要求。 Arm汽车事业部副总裁Chet Babla表示:“随着虚拟电子控制单元(ECU)的应用越来越普遍,它们需要通过验证过的嵌入式实时技术提供支持,实现虚拟嵌入式应用之间的严格隔离。Cortex-R52+可为具有功能安全要求的实时应用提供更好的可配置性。这对于ECU的整合日益重要。” 作为Arm安全就绪(Safety Ready)产品组合的一部分,Cortex-R52+能够出色地满足异构SoC内部集成的安全岛的需求,广泛应用于包括ADAS和座舱控制器在内的诸多应用。该IP采用多处理器配置,单个集群内部可容纳多达四对锁步(lock-stepped)CPU,以提供最高的安全完整性。此外,如果需要更高的计算性能,也可以将其配置为8个CPU。 Cortex-R52+基于以下三大基础技术: ◆ 软件隔离:通过硬件实现的软件隔离,意味着软件功能互不干扰。对于安全相关的任务,这也意味着需要认证的代码更少,从而节省了时间、成本和工作量。 ◆ 支持多个操作系统:借助虚拟化功能,开发人员能够在单个CPU内,使用多个操作系统来整合应用。这样可以简化功能的添加,而无需增加电子控制单元的数量。 ◆ 实时性能:Cortex-R52+的高性能多核集群可为确定性系统提供实时响应能力,且在所有Cortex-R产品中产生的延迟最低。 与Cortex-R52相同,Cortex-R52+将采用独立评估和认证,达到ISO 26262标准的ASIL D等级,以及IEC 61508标准的SIL 3等级,可以避免系统性失效和覆盖随机硬件故障。 汽车设计人员面临的巨大压力 如今的汽车设计人员面临着三大压力: ◆ 第一,汽车电动化发展迅速:根据Strategy Analytics的预测,到2027年,全球汽车销量中将有40%是油电混合或纯电动汽车。 ◆ 第二,为处理座舱,引擎,底盘和传动系统中的高级功能,软件将变得越来越复杂,对应用整合的需求也不断提升,这就需要包括实时功能在内的混合计算能力。 ◆ 第三,安全关键型元件越来越多,意味着汽车设计必须达到ISO 26262等汽车功能安全标准的要求。 现如今的汽车可能采用远多于100个单独的ECU,高档汽车制造商表示,他们的汽车平均每年增加四个ECU。随着ECU的增加,汽车就需要更多复杂、昂贵且沉重的线缆,迫使汽车电子设计人员必须整合设计,将许多控制功能集成到少量但具备更高算力的域控制器或区域控制器中。 由于同一计算资源将被更多应用共享,因此虚拟化需求不容忽视。处理器内核是正在应用虚拟化的领域之一,它们处理时间关键功能并管理安全岛。随着时间关键型系统整合到域控制器和区域控制器中,设计人员必须能够保持确定性的实时执行。 增强汽车功能安全性 长期以来,Arm不断加大对汽车计算产品的投资,旨在让OEM能够满足这些不断变化且高要求的汽车设计需求。2020年,Arm发布了功能强大的下一代CPU、GPU和图像信号处理器,例如Arm Mali-C71AE。这些处理器的设计都是为了可以集成到安全相关系统,以满足针对汽车的ISO 26262 / ASIL B和ASIL D以及工业应用中的IEC 61508 SIL 2和SIL 3完整性要求。 征程才刚刚开始 Arm对于汽车设计愿景的核心原则是安全功能必须基于坚实的基础,Cortex-R52+的推出强化了这一基础,为时间关键型应用提供了增强的安全性、灵活性和实时性能。 Arm仍在继续开发安全就绪产品组合,不仅包括芯片IP,还包括安全包和相关软件,例如软件测试库(STL)、功能安全运行时系统(FuSa RTS),以及Arm功能安全编译器等开发工具。该产品组合不仅仅能帮助硬件产品开发,这些解决方案将会显著加快软件开发和验证,同时缩短部署安全可靠的系统的路径。 打造更安全的驾驶世界所面临的挑战是使设计师和开发人员能够更快,更高效地交付更先进,功能更安全,更具信息安全且更具成本效益的解决方案。这是汽车发展历史上的重大挑战之一,Arm将不惧挑战,创造历史。 更多的产品资讯,欢迎访问Cortex-R52+产品页面。

    Arm ARM 汽车电子 ECU

  • NI支持德克萨斯火箭工程实验室(TREL)开发太空火箭

    NI支持德克萨斯火箭工程实验室(TREL)开发太空火箭

    2021年3月3日,德克萨斯州奥斯汀– NI宣布对德克萨斯大学奥斯汀分校德克萨斯火箭工程实验室(TREL)的赞助。TREL是一个跨学科的研究实验室,旨在通过火箭和航空航天领域内的动手项目,帮助学生为人类太空飞行的新时代做准备。当前TREL的任务是在2021年底前将一枚采用液体双推进剂的28英尺的火箭发射到太空中去。得到NI的测试硬件、仿真系统以及专业指导,TREL正在准备发射源自大学有史以来最强大的火箭。 名为Halcyon的TREL火箭已经进入了Base11太空挑战赛。在这项国际竞赛中,学生主导的团队将设计、制造并发射液体驱动的单级火箭,使其到达100公里的高度,即地球大气层与外层空间之间的正式边界。比赛成功意味着Halcyon的位置要比上一界大学生液体双推进剂火箭的海拔记录高30倍,并为TREL团队赢取100万美元的大奖。 随着Halcyon发射日期的临近,TREL团队正在将重点从组件设计和制造转移到系统集成及测试。为了支持TREL的测试工作,NI将提供超过15万美元的模块化数据采集设备和软件平台,帮助团队通过一系列测试来收集有关Halcyon系统全面的数据。 NI航空航天、国防和政府业务部首席营销主管Nick Butler表示:“我们非常自豪能支持TREL和他们所作的努力,这些学生和研究人员实践了NI倡导的Engineer Ambitiously™。在数字技术用于加速生产、创新和发现中,他们的应用案例生动地展示了设计、测试和集成不断融合的过程。” TREL即将进行的热火试验(由NI提供协助的一系列试验中的第一项)是TXE-1发动机的全面燃烧,将产生超过2500磅的推力。这项测试将收集火箭发动机的关键指标,例如推力、效率和温度,随后将用于优化更轻的TXE-2“Havoc”发动机,而“Havoc”发动机将在今年把“Halcyon”号发射到太空中。 实验室另一个重要里程碑是硬件在环(HIL)测试,对飞行中的整个火箭进行虚拟娱乐和仿真,并朝着设计和测试的数字化转型迈进了一步。NI已经构建了一个定制的测试架,可以为每个火箭组件创建数字孪生,将它们集成在一起以创建飞行中Halcyon的全面仿真。 在NI的支持下,TREL团队将拓宽大学火箭技术的创新边界,并加快团队个人的发展。 “非常荣幸能与NI合作测试Halcyon,经验是无价的。因为这种水平的动态测试通常不在大学课堂教学的范围内,但在行业中却无处不在。TREL的航空电子软件高级工程师Stefan deBruyn表示:“借助新的能力,我们可以在各种任务场景下测试Halcyon,等到发射当天,我们已经做好万全准备。”

    NI 火箭 NI TREL

  • 晶振电路中的两个电容有什么用

    玩转嵌入式 电容 晶振 晶振电路

  • RS-485接口电路的上下拉电阻如何选择?

    一、为什么需要加上下拉电阻? 二、什么情况下需要加上下拉电阻? 根据RSM485PCHT的具体参数(如表1)可以得到如图2所示等效电路,其中RPU、RPD为模块内部在485总线上加的上下拉电阻,RIN为模块的输入阻抗。 当两个模块都处于接收状态时,可以根据基尔霍夫电流定律对节点A和节点B列出下列公式: 根据上述公式可以计算AB之间的差分电压为: 此时模块已处于不确定状态,模块接收器可能输出为高电平,也可能输出为低电平,这时就需要在模块外部增加上下拉电阻保证模块在空闲时不处于不确定状态。 假设模块的输出电源电压V¬O相同,由于RGND接在一起,因此可以认为模块内部的上拉电阻是并联在一起的,为了方便解释,对图2的电路进行整理,如图3所示,在模块外部增加上下拉电阻可以选择只增加一组,也可以选择在每个模块都增加上下拉电阻,为了解释方便,我们在485总线上增加一组上下拉电阻。 免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

    玩转嵌入式 电阻 接口电路 RS-485

  • 据说很多搞软件的羡慕硬件工程师

    因为在软件行业35岁就算老人了 在实际的工作中,其实很惨... 但现实中搞硬件的门槛确实很高 硬件工程师也基本不存在中年危机 如果实在搞不下去了 很多人自己去创业也干的不差 更容易从全盘去考虑问题 一个好的硬件工程师 熟知每一个项目和技术的细节 在成本、功能、性能和客户之间游刃有余 然而却是企业可遇而不可求的 顶级的软件工程师却有很多 想要赢市场就得真刀真枪的拼硬件 小编觉得:对于从属于硬件工程师大类的IC工程师来说,以上大部分也符合! 大家觉得呢? 免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

    玩转嵌入式 软件 硬件 硬件工程师

  • 人生就是一本书!跟通信原理是一样的,您看懂了吗?

    人生的意义在于处于一个循环的随机过程,就是在你的人生轨迹中,始终有状态的起起伏伏和情况的好好坏坏,你永远也不知道下一刻会发生什么;人生的痛苦莫过于,回首岁月,你的这个随机过程不过是个循环平稳的随机过程,无论你怎么变化,却始终逃脱不了命运的五指山,因为通原书告诉我们,这种过程,具有各态遍历性——你所经历的,不过是在反反复复地重演各类杯具。 普通人和公众人物的关系就像是调幅信号,无数个人的存在成全了几个人的价值——你只是载波的大频率分量中的一个微不足道的点,而那些耀眼的公众人物,就是所谓的信号的包络,让你看得足够清楚。 人和人的关系就像HDB3码,不可以太亲昵,所以我们之间引入了归零值;也不可以太陌生,超过三个零点的距离,我就会想方设法把你追回。 我和你之间的关系就像输入信号和匹配滤波器的关系——只有你对我的好感消失时,我对你的爱恋才达到顶峰。 sinc函数告诉我们,哪怕你和他站在对面,只要你们的心是连续的,哪怕在没有直流分量的零点上,你们的功率谱依然能够紧紧相依。 人生是一个傅里叶级数,越难做到的事,它的频率值越大,它的幅值越小。不必太在意,因为我们要认识到有限的人生刻画不出无穷的傅里叶级数,无限的想象力和梦想也终究只是个梦想,因为它的幅值太低。不如脚踏实地,做好每件力所能及的事吧。 奈奎斯特定理告诉我们,如果你的人生在奈奎斯特速率以下,那么只要你投入一定的时间和精力去设计滤波器,你就不会被别人干扰到,记住,做人不要太累,能实现的,终究会出现;走得慢一点,才能看清路上的风景,才不至于被干扰所迷失方向。 我们曾有多少的理想和承诺,在经历几次调制的考验之后就面目全非甚至荡然无存?有没有那样一个人,会用合适的解调方法,将我的光亮现于众人眼前? 杯具与洗具就像是频带信号的两个难兄难弟。乘上复载波之后,发现两个其实是源于一宗。 电路如人生,通信如人生,世间的纷纷扰扰谁又能活得通透呢? 免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

    玩转嵌入式 通信原理 载波 调幅信号

  • 图文并茂!镜像恒流源电路分析

    图1  镜像恒流源电路 镜像恒流源电路简单,应用广泛。但是在电源电压一定时,若要求IC1较大,则IR势必增大,电阻R的功耗就增大,这是集成电路中应当避免的;若要求IC1较小,则IR势必也小,电阻R的数值就很大,这在集成电路中很难做到,为此,人们就想到用其他方法解决,这样就衍生出其他电流源电路。 比例恒流源电路 如图2所示为比例恒流源电路,它由两只特性完全相同的管子VT0和VT1构成,两管的发射极分别串入电阻Re0和Re1。比例恒流电路源改变了IC1≈IR的关系,使IC1与IR呈比例关系,从而克服了镜像恒流源电路的缺点。 与典型的静态工作点稳定电路一样,Re0和Re1是电流负反馈电阻,因此与镜像恒流源电路相比,比例恒流源的输出电流IC1具有更高的稳定性。 当Re0=Re1时,IC1仍然等于IR,但此电路的IR由式(2-4)约定,比式(2-2)的IR小,一般用于前置放大器的输入级。 图3  微变恒流源电路 多路恒流源电路 集成运放是一个多级放大电路,因而需要多路恒流源电路分别给各级提供合适的静态电流。可以利用一个基准电流去获得多个不同的输出电流,以适应各级的需要。 图4所示电路是在比例恒流源基础上得到的多路恒流源电路,IR为基准电流,IC1、IC2和IC3为三路输出电流。由于各管的b-e间电压UBE数值大致相等,因此可得近似关系 IE0Re0≈IE1Re1≈IE2Re2≈IE3Re3(2-6) 当IE0确定后,各级只要选择合适的电阻,就可以得到所需的电流。

    玩转嵌入式 电路 恒流源 差动放大器

  • 硬件开发文档规范

    硬件需求说明书是描写硬件开发目标,基本功能、基本配置,主要性能指标、 运行环境,约束条件以及成本和进度等要求,它的要求依据是产品规格说明书和系统需求说明书。它是硬件总体设计和制订硬件开发计划的依据,具体编写的内容有:系统工程组网及使用说明、硬件整体系统的基本功能和主要性能指 标、硬件分系统的基本功能和主要性能指标以及功能模块的划分等。 一、需要对整个产品的需求包有所了解。 三、做好需求跟踪 案例1: 某个物联网项目的需求跟踪表 硬件总体设计报告是根据需求说明书的要求进行总体设计后出的报告,它是硬件详细设 计的依据。编写硬件总体设计报告应包含以下内容:    系统总体结构及功能划分,系统逻辑框图、组成系统各功能模块的逻辑框图,电路结构 图及单板组成,单板逻辑框图和电路结构图,以及可靠性、安全性、电磁兼容性讨论和硬件测试方案等。 在单板的总体设计方案定下来之后应出这份文档,单板总体设计方案应包含单板版本 号,单板在整机中的位置、开发目的及主要功能,单板功能描述、单板逻辑框图及各功能模 块说明,单板软件功能描述及功能模块划分、接口简单定义与相关板的关系,主要性能指标、 功耗和采用标准。 一、单板框图应该说明清楚连线的规格、器件的规格、尽量与预布局保持一致,便于发现带宽、容量、走线、功耗、散热、电源等维度的问题。 案例:iBox单板款图 iBox主芯片MCU的IO管脚定义和接口分配 在单板硬件进入到详细设计阶段,应提交单板硬件详细设计报告。在单板硬件详细设计 中应着重体现:单板逻辑框图及各功能模块详细说明,各功能模块实现方式、地址分配、控 制方式、接口方式、存贮器空间、中断方式、接口管脚信号详细定义、时序说明、性能指标、 指示灯说明、外接线定义、可编程器件图、功能模块说明、原理图、详细物料清单以及单板 测试、调试计划。有时候一块单板的硬件和软件分别由两个开发人员开发,因此这时候单板 硬件详细设计便为软件设计者提供了一个详细的指导,因此单板硬件详细设计报告至关重 要。尤其是地址分配、控制方式、接口方式、中断方式是编制单板软件的基础,一定要详细 写出。 案例:iBox的详细设计: 开发过程中,每次所投 PCB 板,工程师应提交一份过程文档,以便管理阶层了解进度, 进行考评,另外也给其他相关工程师留下一份有参考价值的技术文档。每次所投 PCB 板时 应制作此文档。这份文档应包括以下内容:单板硬件功能模块划分,单板硬件各模块调试进度,调试中出现的问题及解决方法,原始数据记录、系统方案修改说明、单板方案修改说明、 器件改换说明、原理图 下图为早期某个物联网项目的改版记录跟踪表: 在项目进入单板系统联调阶段,应出单板系统联调报告。单板系统联调报告包括这些内 容:系统功能模块划分、系统功能模块调试进展、系统接口信号的测试原始记录及分析、系 统联调中出现问题及解决、调试技巧集锦、整机性能评估等。 7、单板硬件测试文档 为了共享技术资料,我们希望建立一个共享资料库,每一块单板都希望将的有价值 有特色的资料归入此库。硬件信息库包括以下内容:典型应用电路、特色电路、特色芯片技 术介绍、特色芯片的使用说明、驱动程序的流程图、源程序、相关硬件电路说明、PCB 布板注意事项、单板调试中出现的典型及解决、软硬件设计及调试技巧。

    玩转嵌入式 硬件 开发文档 需求说明书

  • 关于JTAG口,你了解多少?

    在FPGA研发及学习过程中,有一个关键步骤就是下板实现,做硬件“硬现”很重要,一般来说用JTAG口比较常见一些,因此相信肯定有些大侠遇到过JTAG口失灵或者损坏无法使用的事情。最近我就遇到了这类事情,FPGA的JTAG口突然就不能下载程序了,而且这种事情已经不是第一次了,之前在做项目的时候也出现过,而且出现的形式也极其相似,之前还用的好好的,第二天就不行了,真是让人郁闷。为此,本人也是去尝试了很多解决办法,一开始也没有去设想是JTAG口坏了,于是乎,本人换了usb-blaster,可一点反应也没有。难道真的是JTAG口坏了?于是,本人就去查阅相关资料去搞清楚问题的本质在哪里,下面就是本人的一些收获,分享出来,仅供各位大侠参考,一起交流学习。 根据查阅资料及本人的一些实践经验所得,在使用JTAG下载接口的过程中,请不要随意带电插拔,否则会损坏FPGA芯片的JTAG口信号管脚。那么如何去确认JTAG口已经损坏了呢。首先你要去排除基本的几项因素,一是,是否匹配连接,有很多设备会对应很多接口,在实际条件下要匹配正确,否则也会出现上述情况;二是,排除下载线的问题,如果是下载线坏了,可以使用多根下载线去尝试,排除这类问题。如果还是不能访问FPGA的JTAG口,那么很有可能你的FPGA芯片的JTAG口已经损坏。此时请用万用表检查TCK,TMS,TDO和Tdi是否和GND短路,如果任何一个信号对地短路则表示JTAG信号管脚已经损坏。 至于JTAG口是什么,这里我们也来探讨一下,JTAG英文全称是 Joint Test Action Group,翻译过来中文就是联合测试工作组。 JTAG是一种IEEE标准用来解决板级问题,诞生于20世纪80年代。今天JTAG被用来烧录、debug、探查端口。当然,最原始的使用是边界测试。 1、边界测试 举个例子,你有两个芯片,这两个芯片之间连接了很多很多的线,怎么确保这些线之间的连接是OK的呢,用JTAG,它可以控制所有IC的引脚。这叫做芯片边界测试。 2、JTAG引脚 JTAG发展到现在已经有脚了,通常四个脚:TDI,TDO,TMS,TCK,当然还有个复位脚TRST。对于芯片上的JTAG的脚实际上是专用的。 TDI:测试数据输入,数据通过TDI输入JTAG口; TDO:测试数据输出,数据通过TDO从JTAG口输出; TMS:测试模式选择,用来设置JTAG口处于某种特定的测试模式; TCK:测试时钟输入; TRST:测试复位。 CPU和FPGA制造商允许JTAG用来端口debug;FPGA厂商允许通过JTAG配置FPGA,使用JTAG信号通入FPGA核。 3、JTAG如何工作 PC控制JTAG:用JTAG电缆连接PC的打印端口或者USB或者网口。最简单的是连接打印端口。 TMS:在每个含有JTAG的芯片内部,会有个JTAG TAP控制器。TAP控制器是一个有16个状态的状态机,而TMS就是这玩意的控制信号。当TMS把各个芯片都连接在一起的时候,所有的芯片的TAP状态跳转是一致的。下面是TAP控制器的示意图: 改变TMS的值,状态就会发生跳转。如果保持5个周期的高电平,就会跳回test-logic-rest,通常用来同步TAP控制器;通常使用两个最重要的状态是Shift-DR和Shift-IR,两者连接TDI和TDO使用。 IR:命令寄存器,你可以写值到这个寄存器中通知JTAG干某件事。每个TAP只有一个IR寄存器而且长度是一定的。 DR:TAP可以有多个DR寄存器,与IR寄存器相似,每个IR值会选择不同的DR寄存器。(很迷) 4、JTAG链相关疑问 计算JTAG链中的IC数目: 一个重要的应用是IR值是全一值,表示BYPASS命令,在BYPASS模式中,TAP控制器中的DR寄存器总是单bit的,从输入TDI到输出TDO,通常一个周期,啥也不干。 可用BYPASS模式计算IC数目。如果每个IC的TDI-TDO链的延迟是一个时钟,我们可以发送一些数据并检测它延迟了多久,那么久可以推算出JTAG链中的IC数目。 得到JTAG链中的器件ID: 大多数的JTAG IC都支持IDCODE命令。在IDCODE命令中,DR寄存器会装载一个32bit的代表器件ID的值。不同于BYPASS指令,在IDCODE模式下IR的值没有标准。不过每次TAP控制器跳转到Test-Logic-Reset态,它会进入IDCODE模式,并装载IDCODE到DR。 5、边界扫描: TAP控制器进入边界扫描模式时,DR链可以遍历每个IO块或者读或拦截每个引脚。在FPGA上使用JTAG,你可以知晓每个引脚的状态当FPGA在运行的时候。可以使用JTAG命令SAMPLE,当然不同IC可能是不同的。 如果JTAG口已经损坏了,那只能“节哀顺变”了,但是也不要只顾着伤心,最重要的是分析其中的原因,做其他事情也是一样的道理。那我们就来分析分析,我们在使用的过程中,可能经常为了方便,随意插拔JTAG下载口,在大多数情况下不会发生问题。但是仍然会有很小的机率发生下面的问题,因为热插拔而产生的JTAG口的静电和浪涌,最终导致FPGA管脚的击穿。至此,也有人怀疑是否是盗版的USB Blaster或者ByteBlasterII设计简化,去除了保护电路导致的。但经过很多实际情况的反馈,事实证明原装的USB Blaster 也会发生同样的问题。也有人提出质疑是否是ALTERA的低端芯片为了降低成本,FPGA的IO单元没有加二极管钳位保护电路。这类质疑其实都不是解决问题的本质,最重要的是我们要规范操作,尽可能的去减少因为实际操作不当导致一些硬件设备、接口等提前结束寿命或“英年早逝”,那重点来了,关于JTAG下载口的使用,我们需要如何去规范操作呢。 上电时的操作流程顺序: 1.在FPGA开发板及相关设备断电的前提下,插上JTAG下载线接口; 2.插上USB Blaster或者ByteBlasterII的电缆; 3.接通FPGA开发板的电源。 下电时的操作流程顺序: 1.断开FPGA开发板及相关设备的电源; 2.断开USB Blaster或者ByteBlasterII的电缆; 3.拔下JTAG下载线接口,并放置适宜地方存储。 虽然上述的操作步骤有点繁琐,有时我们在使用的时候也是不以为然,但是为了保证芯片不被损坏,建议大家还是中规中矩的按照上述的步骤来操作。本人上述出现的问题,经过检测后就是TCK跟GND短路了,虽然发生的概率不是很大,但是为了能够更合理更长久的的使用硬件相关设备,还是建议大家在实操过程中,不要担心繁琐,中规中矩操作,换个角度思考,“多磨多练”也是对自己有好处的。最后,还是给各位唠叨一句,关于JTAG下载口的使用最好不要带电热插拔,起码可以让JTAG口“活”的久一些,毕竟长情陪伴也是挺不错的,不要等到失去了才知道惋惜。 免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

    玩转嵌入式 FPGA JTAG

  • 计算机的工作原理:RAM系列-八位寄存器

    前面说过的是1位寄存器,我们可以很容易扩展到8位,数据输入端i是相互独立的,“写”信号s并在一起,对8位信号输入统一控制: 也就是说,当s=1时,o=i;当s=0时,o处于保持状态。 8bit=1byte,可以把上面电路抽象成: 我们知道,每一位都有0和1两个状态,对于8位锁存器,有2^8=256个状态。 前面我们已经搞定如何控制将8位数据“写入”,那如何控制数据的“读出”呢?——很简单,再增加一个“使能器”: 组成很简单,8个与门,当e=1时,o=i;e=0时,o=0;可以抽象成: s相当于“写”的使能端,e相当于“读”的使能端。放在一起就是一个8位寄存器了,抽象如下: 其中R表示register。顾名思义,存储器的作用就是存储信息,并且能通过使能端控制信息的写入和读出。 免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

    玩转嵌入式 工作原理 计算机 寄存器

  • 计算机的工作原理:RAM系列-触发器

    计算机是什么呢?——简而言之,可以看成是一个“自动干活的设备”。说起来并不复杂,我们一一拆解一下这句话。首先“设备”很好理解,不用多解释。“干活”也好理解,就是要能实现一定的功能。“自动”是啥意义呢?——就是在初始人为干预结束后,设备能自动运行,也就是说,机器能自己存储并执行某种预设的“指令”。按照这个理解,我们基本就可以得到计算机的组成了:负责干活的设备和负责存储的设备。我们把前者叫做CPU,后者叫做RAM。当然还需要一些辅助设备将这两个东西连接起来,简要模型如下: 前面说了,RAM的作用是存储数据,我们知道,要存储信息,至少要有两个状态,且都必须是稳定的,我们把这样的器件称为双稳态器。最简单的双稳态器组成非常简单——两个非门串联反馈在一起,如下图所示: 经过简单分析这个电路,很容易发现:上图中红色部分信号既可以是高电平,也可以是低电平!也就是说,原来电路上是高电平的话,就一直维持在高电平,原来低电平的话,就一直维持在低电平-----这个电路有两个稳定状态,也就是有最简单的记忆功能。 大家都知道,触发器是现代电子技术中一个非常核心的器件,其实触发器的本质就是通过两个非门串联反馈在一起的双稳态器。 但是呢,基于两个非门串联反馈在一起的双稳态器有一个缺点: 状态一旦确定了之后就不再变化了,也就是说,我们没有办法改变这个系统的记忆,因为没有控制接口。 这当然难不倒我们,我们可以自己加上,比如,可以用两个与非门来代替非门,这样就可以增加两个控制端: 当然,也可以用或非门来代替非门,感兴趣的可以自己试一下。 如果将上图的与非门翻转180°,就会变成下面的图: 有没有一种似曾相识的感觉?没错,这就是RS触发器,它有四种状态: a=1,b=1,为保持状态,也就是退化为两个非门的反馈串联; a=0,b=1或a=1,b=0,就会控制记忆和输出; a=0,b=0,o和ō 都是1,应避免出现该种状态,我们称之为非法态。(o表示输出(output),ō 表示反向输出) 有两个bug: 能够控制记忆,但是有非法状态; 整个系统不受控,一直在工作,当输入端变化时,输出端也跟着变化。 我们可以在输入端再增加两个或门,这样的话,中间这个输入引脚为1的话,电路处于保持状态,就自动屏蔽外部输入,也就是老子不干活了。只有中间这个引脚为0的时候,才工作。 这样就就解决了第二个bug,但是依然有存在非法态的可能,怎么干掉呢? 既然中间引脚解决了保持记忆的问题,那我们最后只要保证输入的两个引脚不同,就可以避免全0的情况,加个非门不就完事了?两个输入永远不会同时为0。 这就是电平型D触发器。 前面我们说了,只有当s=0时,输出才等于输入,系统才开始干活,我们更习惯s=1时干活,这样也好办,再加一个非门。同时,我们把表示a改为i,意为input。 这样显得略臃肿,我们知道: 即: 这样左上方的或门就可以变为与非门,所以有: 同时,我们又知道: 即 所以,此时: 可以进一步简化成4个与非门的形式。 这就是1位寄存器了。简写形式如下: 1位寄存器 其功能是: 当s=1时,o=i;当s=0时,o保持原来的状态。 免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

    玩转嵌入式 工作原理 计算机 RAM

  • RISC-V处理器是如何设计指令集的?有何特别之处

    20 世纪 90 年代末,RISC 和 CISC 爆发了一场大战,自那以后,大家却说 RISC 和 CISC 的区别没那么重要了了。许多人表示,指令集也就那么回事,对 CPU 没什么太大的影响。但其实不然,指令集决定了我们可以轻松为微处理器做哪些优化。本文将介绍 RISC-V 处理器是如何设计指令集的,这样的设计具有什么好处。 20 世纪 90 年代末,RISC 和 CISC 爆发了一场大战,自那以后,大家却说 RISC 和 CISC 的区别没那么重要了了。许多人表示,指令集也就那么回事,对 CPU 没什么太大的影响。 但其实不然,指令集决定了我们可以轻松为微处理器做哪些优化。 我最近一直在了解有关 RISC-V 指令集架构 (ISA) 的更多信息,说起来,关于 RISC-V ISA 有几件事给我留下了非常深刻的印象: 它是一种 RISC 指令集,体积小,易于学习。不管是任何人,只要有兴趣学习微处理器,选它准没错。 它在大学数字化设计教学中占据重要地位:为什么大学要学 RISC-V 经过巧妙地设计,它允许 CPU 设计生产者使用 RISC-V ISA 打造高性能微处理器。 无需授权费,且被设计成允许简单的硬件实现,按道理,专业爱好者可以在合理的时间内完成他自己的 RISC-V CPU 设计。 易于修改和使用的开源设计:The Berkely Out-of-Order (BOOM) RISC-V 处理器 压缩指令和宏融合 然而,在 CPU 设计中有两项特别的创新,这些创新从许多方面使添加更多复杂指令的策略变得多余: ·压缩指令——在内存中压缩指令,并在 CPU 的第一阶段进行解压。 ·宏融合——将两个或两个以上由 CPU 读取的简单指令融合成一个复杂指令。 实际上 ARM 已经采用了这两种策略,而 x86 CPU 则采用了后者,所以这不能算是 RISC-V 的新招术。 然而,关键是 RISC-V 从这些策略中获得了更大的优势,这里面有两个重要原因: 它从一开始就添加了压缩指令。在 ARM 上使用的是 Thumb2 压缩指令格式,这就必须将其作为一个单独的 ISA 来添加以完成改造,这需要一个内部模式切换和单独的解码器来进行处理。RISC-V 压缩指令可以添加到具有 400 个额外逻辑门 (AND、OR、NOR、NAND 门) 的 CPU 上。 2.RISC 执着地控制独特指令的数量得到了回报,如此就有了更多的空间来容纳压缩指令。 指令编码 这一部分需要进行一些解释。指令在 RISC 体系结构上通常是 32 位(即比特)宽的。这些比特需要用来编码不同的信息。例如,下面这样一条指令: ADD x1, x4, x8 # x1 ← x4 + x8 这条指令将累加寄存器 x4 和 x8 的内容,然后将结果存储在 x1 中。我们需要多少比特来编码,这取决于我们有多少寄存器。RISC-V 和 ARM64 有 32 个寄存器。可以用 5 比特表示数字 32: 2⁵ = 32 因为我们需要指定 3 个不同的寄存器,所以我们需要总共 15 比特 (3×5) 来编码操作数 (累加操作的输入)。 因此,我们想要在指令集中支持的东西越多,那么就会消耗掉那 32 比特中更多的比特。当然,我们可以使用 64 位指令,但是这会消耗太多的内存,从而降低性能。 通过刻意压低指令的数量,RISC-V 节省下更多的空间来添加表示我们正在使用的压缩指令的比特。如果 CPU 看到指令中的某些位被设置为 1,它就知道这条指令应该作为一条压缩指令来进行解释。 为什么不能在代码中直接编写此宏操作? 因为我们的 ISA 不包含对它的支持!记住,可用的比特数是有限的。为什么不把说明写长一点呢?不行,那样会消耗太多的内存,并且会更快填满宝贵的 CPU 缓存。 然而,如果我们在 CPU 内部制造这些半复杂的长指令,也没有什么可担心的。CPU 在任何时候所面对的指令最多也不过几百条。所以在每条指令上浪费个 128 比特不是什么大问题。每个人都有足够的硅。 因此,当解码器得到一条正常指令时,它通常会把它转换成一个或多个“微”操作。这些“微”操作是 CPU 实际要处理的指令。它们可以非常地“宽广”,包含很多额外的有用信息。称之为“微”似乎有些讽刺,因为它们其实很“广”。然而事实上“微”指的是它们做的任务数量有限。 RISC-V 设计策略 RISC-V 利用了我们当今对现代 CPU 的了解,并用这些知识指导了他们在设计时的选择。例如,我们知道: 如今,CPU 内核会提前做分支预测。它们的预测正确率超过 90%。 CPU 内核是超标量体系结构的,这意味着它们在并行执行多条指令。 使用无序执行做到超标量体系结构。 它们是流水线式的。 这意味着不再需要像 ARM 所支持的条件执行等之类的事情。在 ARM 上支持它会消耗掉指令格式中的一些字节。RISC-V 可以节省这些比特。 条件执行的最初目的是避免分支,因为它们不利于流水线。CPU 要想快速运行,通常会预取下一条指令,这样在前一条指令完成第一阶段后,它就可以快速地选取下一条指令。 但是使用条件转移,当你开始填充流水线时,你不知道下一条指令将在哪里。然而,超标量 CPU 可以简单地并行执行两个分支。 这也是 RISV-C 没有状态寄存器的原因。因为这会导致指令之间的依赖性。每条指令越独立,就越容易与另一条指令并行运行。 RISC-V 策略基本上是,我们如何使 ISA 尽可能简单,使 RISC-V CPU 的最小实现尽可能简单,而无需做出影响 CPU 性能的设计决策。 来源:AI前线 免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

    玩转嵌入式 处理器 指令集 RISC-V

  • 怎么向亲戚描述你的工作岗位?硬件工程师把自己解释晕了

    上大学时就是电子类的专业,毕业后从事的也是与专业差不多对口的工作。现在在工作中,都被称呼为电子工程师或者硬件工程师。这听起来很正常,但是过节回家怎么回复老家亲戚朋友伙伴门的询问呢? 硬件工程师补焊板子 每次被问起自己的工作时,我都很苦恼,不知道怎么描述。我们的职位不同于传统意义上的工作职位,诸如教师、会计、律师等,一说就明。讲自己是做硬件的,他们不懂硬件,还是没有讲清楚。讲自己是做电子的,他们对电子的了解有限,还是要问。 那就只能根据自己公司的服务群体来讲了。 如果是手机行业讲自己是做手机的,那么好了,邻居可能会拿来一部坏了的手机,让你给修好,你给他讲手机是一个很复杂的东西的时候,你会看见他对你投来鄙视的目光。 如果是矿山自动化行业,说自己是给矿方提供自动化设备的,他们就会恍然大悟,原来是挖煤的啊,你一脸无奈也没有办法。 如果是做互联网的,说自己是程序员的,这时候你要注意了,老家的人没有几个能懂编程是怎么回事,你解释着解释着就把自己解释晕了。 我说我是学计算机的,做硬件的,他们就只会记住你是搞计算机的,所以关于电脑的故障什么的,要让你给解决掉。 我是程序猿 工作这么多年了,每次回家还是还是讲不清自己是做什么的。这次又回家了,还是没有讲清楚。 怎么描述我的岗位呢 别人问起自己的职业的时候,你们都是怎么描述的呢?留言来讨论一下吧。 免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

    玩转嵌入式 电子工程师 硬件工程师

  • 5元变70,哎,芯片又缺货了

    我的产品中一颗ST的MCU,平时5块钱,现在已经涨到70元了,听起来非常恐怖,虽然有一部分原因是供应链问题导致的,但是芯片缺货是主因。 众所周知,在疫情的影响之下,5G、智能手机、电脑、电视等的需求反而大增,且汽车销量在下半年也开始反弹,导致全球半导体供货紧张,并且因此造成产能挤兑,加剧了缺货情况。 所以我们看到自2020年下半年开始,就传出各种半导体涨价的消息,从上游材料到下游的成品,不仅涨价,还缺货严重,目前在整个半导体行业,目前几乎没有闲置产能,并且需求还在继续增长。 而从产业来看,汽车产业是首当其冲,在大众“实锤”因芯片短缺受到波及后,福特、菲亚特克莱斯勒、丰田等也相继表示,由于芯片短缺,它们将削减汽车产量。 而在汽车之外,其它的半导体产品也一样,可以说所有的半导体产品都在涨价缺货,只是涨多涨少而已,并且这种涨价、缺货是全球性的,而预计情况缓解,需要半年甚至一年之久。 所以有些厂商表示,要调整接下来的产能,比如大众就表示,将调整在中国、北美、甚至欧洲的产量,因为芯片跟不上。 当然,这波芯片大缺货,大涨价可能会迎来一波半导体产业的大洗牌。但不可否认的是,这次中国可能受伤最严重。 为何这么说?因为中国作为全球的电子、数码产品制造中心,每年消费了全球最多的芯片,并且消耗的这些芯片中,70%+要靠进口。 而一旦芯片缺货,价格上涨,会导致众多的制造工厂也处于缺货状态,从而导致减产甚至停工。 就算最后能够想办法买到芯片,没有导致停产,但只要价格上涨20%,中国一年因此就要多付出600亿美元,毕竟过去年中国进口芯片金额都超过3000亿元,消耗了全球至少三分之一的芯片,是全球最大的芯片市场。 而600亿美元,相当于4000多亿元人民币,差不多是小米两年的营收了,差不多是华为5年的利润,你说这损失还不大? 来源:头条互联网乱侃秀 链接:https://www.toutiao.com/a6919002518420783619/ 免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

    玩转嵌入式 供应链 芯片 MCU

  • 电源防反接电路

    02 整流桥型防反接保护电路 使用整流桥将电源输入变为无极输入,无论电源正接还是反接,电路板一样正常工作。 以上使用二极管进行防反处理,若采用硅二极管具有0.6~0.8V左右的压降,锗二极管也有0.2~0.4V左右的压降,若觉得压降太大,可使用MOS管做防反处理,MOS管的压降非常小,可达几毫欧姆,压降几乎可忽略不计。 03 MOS管防反保护电路 MOS管因工艺提升,自身性质等因素,其导通内阻技校,很多都是毫欧级,甚至更小,这样对电路的压降,功耗造成的损失特别小,甚至可以忽略不计,所以选择MOS管对电路进行保护是比较推荐的方式。 (1) NMOS防护 如下图:上电瞬间,MOS管的寄生二极管导通,系统形成回路,源极S的电位大约为0.6V,而栅极G的电位为Vbat,MOS管的开启电压极为:Ugs = Vbat - Vs,栅极表现为高电平,NMOS的ds导通,寄生二极管被短路,系统通过NMOS的ds接入形成回路。 若电源接反,NMOS的导通电压为0,NMOS截止,寄生二极管反接,电路是断开的,从而形成保护。 (2)PMOS防护 如下图:上电瞬间,MOS管的寄生二极管导通,系统形成回路,源极S的电位大约为Vbat-0.6V,而栅极G的电位为0,MOS管的开启电压极为:Ugs = 0 -(Vbat-0.6),栅极表现为低电平,PMOS的ds导通,寄生二极管被短路,系统通过PMOS的ds接入形成回路。 若电源接反,NMOS的导通电压大于0,PMOS截止,寄生二极管反接,电路是断开的,从而形成保护。 注:NMOS管将ds串到负极,PMOS管ds串到正极,寄生二极管方向朝向正确连接的电流方向。 MOS管的D极和S极的接入:通常使用N沟道的MOS管时,一般是电流由D极进入而从S极流出,PMOS则S进D出,应用在这个电路中时则正好相反,通过寄生二极管的导通来满足MOS管导通的电压条件。MOS管只要在G和S极之间建立一个合适的电压就会完全导通。导通之后D和S之间就像是一个开关闭合了,电流是从D到S或S到D都一样的电阻。 实际应用中,G极一般串接一个电阻,为了防止MOS管被击穿,也可以加上稳压二极管。并联在分压电阻上的电容,有一个软启动的作用。在电流开始流过的瞬间,电容充电,G极的电压逐步建立起来。 对于PMOS,相比NOMS导通需要Vgs大于阈值电压,由于其开启电压可以为0,DS之间的压差不大,比NMOS更具有优势。 04 保险丝防护 很多常见的电子产品,拆开之后都可以看到电源部分加了保险丝,在电源接反,电路中存在短路的时候由于大电流,进而将保险丝熔断,起到保护电路的作用,但这种方式修理更换比较麻烦。 免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

    玩转嵌入式 二极管 电源 防反接电路

首页  上一页  1 2 3 4 5 6 7 8 9 10 下一页 尾页
发布文章