摩登3注册平台官网_34个动控制原理图,老电工看了都说好!

有时我们关注的公众号消息比较多,错过了一些自己喜欢的消息,不能及时看到工控论坛的推送,我们可以给公众号加星标或置顶。那如何星标置顶呢?【打开一篇工控论坛公众号的文章,点击文章标题下方的蓝色字体进入工控论坛公众号,右上角“···”选择设为星标,置顶公众号】 01 可控硅调速电路 02 电磁调速电机控制图 03 三相四线电度表互感器接线 04 能耗制动 05 顺序起动,逆序停止 06 锅炉水位探测装置 07 电机正反转控制电路 08 电葫芦吊机电路 09 单相漏电开关电路 10 单相电机接线图 11 带点动的正反转起动电路 12 红外防盗报警器 13 双电容单相电机接线图 14 自动循环往复控制线路 15 定子电路串电阻降压启动控制线 16 按启动钮延时运行电路 17 星形 – 三角形启动控制线路 18 单向反接制动的控制线路 19 反接制动电阻,可逆运行反接制动的线路 20 以时间原则控制的单向能耗制动线路 21 以速度原则控制的单向能耗制动控制线路 22 电动机可逆运行的能耗制动控制线路 23 双速电动机改变极对数的原理 24 双速电动机调速控制线路 25 变频器的异步电动机可逆调速系统控制线路 26 正确连接电器的触点 27 线圈的连接 28 继电器开关逻辑函数 29 三相半波整流电路图 30 三相全波整流电路图 31 三相全波6脉冲整流原理图 32 六相12脉冲整流原理图 33 负载两端的电压 在一个周期中,每个二极管只有三分之一的时候导通(导通角为120度)。负载两端的电压为线电压。 34 免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

摩登3测速登录地址_人工智能再次大放异彩!索尼做菜AI 应运而生

人工智能(Artificial Intelligence),英文缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。 人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。人工智能从诞生以来,理论和技术日益成熟,应用领域也不断扩大,可以设想,未来人工智能带来的科技产品,将会是人类智慧的“容器”。人工智能可以对人的意识、思维的信息过程的模拟。人工智能不是人的智能,但能像人那样思考、也可能超过人的智能。 人工智能是一门极富挑战性的科学,从事这项工作的人必须懂得计算机知识,心理学和哲学。人工智能是包括十分广泛的科学,它由不同的领域组成,如机器学习,计算机视觉等等,总的说来,人工智能研究的一个主要目标是使机器能够胜任一些通常需要人类智能才能完成的复杂工作。但不同的时代、不同的人对这种“复杂工作”的理解是不同的。 2017年12月,人工智能入选“2017年度中国媒体十大流行语”。 提到人工智能,机器人、智能汽车、智慧交通是很多人首先想到的应用领域。调研发现,这些领域人工智能的商用化进程的确很快,并且业内企业正在以惊人的速度成长着。 人工智能的快速发展不仅体现在机器人、智能汽车等“高精尖”领域,更为重要的是,它正在与多个稀松平常的传统行业融合。我们日常生活中的许多场景,正在被人工智能改变,比如食堂、超市、服装店等等。 近日,索尼 AI 官方正式发布了 “美食旗舰”项目,将利用人工智能来创造菜谱、打造与厨师协作的做菜机器人。 据了解,索尼 AI 事业部于 2019 年 11 月成立,2020 年 4 月独立成为一家新公司。根据官方描述,索尼 AI 将利用各种数据源——包括配方和食材的数据,如口味、香气、味道、分子结构、营养成分等——来开发一款菜谱创作 App,该 App 将由专有的 AI 算法驱动,协助世界顶级水平的厨师进行食材搭配、食谱设计和菜单创建的创意过程。 索尼 AI 还同时发布了 “厨师访谈系列”,将打造一个美食创作的社群。索尼 AI 通过在线访谈共采访了 18 位厨师和美食专家,了解他们的灵感来源、菜单创作背后的创意过程、技术运用、对可持续发展的看法以及其他对于美食行业发展的重要趋势。 同时,在我们国内一批优秀的人工智能企业正在飞速发展。在业内人士眼中,人工智能没有产能和市场的极限,随着与传统行业的加速融合,人工智能能够重塑所有传统行业。 人工智能产业必须与行业不断融合才能取得发展,现在的问题是如何开拓更多的人工智能应用场景。应用场景丰富了,与行业融合的程度加深了,人工智能的市场就扩大了。从这个层面来讲,人工智能产业能够重塑所有传统行业,并且没有市场规模的极限或者产能极限。

摩登3主管554258:_触宝Q3财报:互联网泛娱乐激战下的从容

配图来自Canva可画 以网文、直播、短视频为核心的泛娱乐内容,在年初制造的爆发效应仍在持续。 12月15日,触宝发布2020年第三季度财报。财报显示,触宝Q3营收达到1.1亿美元,同比实现238%的增长。在今年一季度突破1亿美元的营收里程碑后,触宝的营收规模已连续3个季度实现同比100%以上的增速,且前三季度营收总和已超过2019全年。 这样的增长势头,表明触宝以网文、场景化内容应用、休闲游戏为核心的内容生态战略,是一条正确的路。 网文存量竞争下的逆势增长 在历经第一季度的流量大爆发后,网文市场已经步入存量竞争时代。 根据易观分析《2020年第三季度中国移动阅读市场洞察》,2020 Q3中国移动阅读活跃用户规模达3.96亿人,较Q2环比下降1.08%。同时《洞察》还指出,行业第一梯队厂商较为稳固,第二梯队厂商差距逐渐拉大,行业马太效应加剧。 但这种激烈的竞争并未阻碍触宝网文产品的快速增长。财报显示,Q3触宝网文产品平均DAU达到了1000万,相较去年同期的200万,增长了4倍;平均MAU则达到了2950万,相较去年同期的1100万,增长了168%。 值得注意的还有触宝的核心网文产品——疯读小说,财报披露了其Q3用户每日平均花费时长从二季度的110分钟增长到三季度的130分钟,环比增长18%。 疯读小说的高速增长是触宝网文产品成长的缩影,这个去年才上线的网文产品,早在今年上半年已跻身网文赛道第一梯队。QuestMobile曾在《中国移动互联网2020半年大报告》提到,疯读小说的优势在于独家自制内容及AI自研技术。 总体来说,Q3触宝网文产品依然保持了一个很可观的增速,而且是在网文赛道竞争加剧的大背景下。这种强烈的对比,很好地说明了触宝的网文产品已经处在一个稳定的快增长轨道上,并形成了显著的增长惯性。 自制大潮下持续发力原创内容生态 发力自制原创内容,已经成为当前泛娱乐内容赛道的一个共识。无论是网文、直播,还是短视频,目前的主要玩家都在寻求内容生产的原创化和自制化,比如根据网文IP改编影视剧、巨头培育自有MCN机构等。 发力原创内容生态,也是触宝第三季度网文产品逆势增长的主要原因。财报提到,触宝一直在快速开发定制化内容生产模式,以使其在用户粘性上具备更强的竞争力。 据悉第三季度触宝在原创内容生态上得到进一步拓展。一方面,触宝已将网文内容IP化,并衍生出有声书、影视短片等其他内容形式;另一方面,触宝仍然在不断扩容原创内容的生产矩阵,目前触宝签约的原创作者已超过2000个。 总体来看,延伸内容形式、拓宽生产力规模,是触宝在第三季度的主要动作。而当前的网文用户在内容需求上的主要特征有两点,一是差异化,即非同质化内容,二是不枯竭的内容供给。 因此触宝能够正中下怀,通过丰富内容供给的多元化,持续满足用户对不同形式内容的需求,让网文产品不仅吸引来更多新用户,而且做到了比较高的留存。 对原创内容的坚持在驱动产品用户增长的同时,也让触宝的网文产品保持了可靠稳定的变现能力。在第三季度财报中,触宝网文产品和场景化内容应用合计贡献了58%的移动广告收入,而Q2这个比例为54%。 内容生态精细进化 泛娱乐内容生态化已成为诸多巨头的基本战略和长期战略。今年我们看到包括BAT在内的不少巨头在社交、直播、网文、短视频等领域通过孵化或收购来扩张产品矩阵,目的很明确,就是要通过布局更多元化的泛娱乐内容生态,把用户留在自有生态内消费。 触宝发力内容生态战略已多年,今年从用户、营收、投入各方面的数据来看,触宝的内容生态战略已经发挥出明显的协同效应,整个内容生态容量和质量都在不断提升。 第三季度触宝依然保持了这种发展势头。一方面,触宝不断通过喂养网文产品,来撬动整个内容生态的协同效应。根据财报,管理层表示要继续利用网文产品的核心优势以及三大板块间持续增长的协同效应,来丰富整个内容生态。 另一方面,触宝利用技术和算法迭代升级,已对整体内容生态形成智能化控盘,越发精细化。具体来看,这种智能化控盘包括为用户推荐定制化内容,以及为用户推荐更多的内容来满足用户在使用时长上的增长需求。 值得注意,以算法和技术优势为基础,借助内容生产端持续扩容优势,触宝正在快速从娱乐化营销模式转向内容营销模式。后者通过为用户供给源源不断的个性化内容,从而能够牢牢抓住用户。 一手协同,一手算法,触宝高质量高精细化的内容生态运营策略,收效非常显著。根据财报,触宝整体产品Q3平均DAU达到2770万,同比增长16%;平均MAU达到9480万,同比增长40%。 从快到稳的增长节奏 总体来看,保证内容输出的可持续性,以及催化多元内容间的协同效应,是触宝Q3财报透露的核心信息。这也是触宝能够在活跃用户规模及用户使用时长上持续快速增长的根本原因。 但触宝实际上走得越来越稳,并非一股脑往前冲。这一方面体现在运营模式更加健康,比如基于技术和算法向内容化营销靠近,用更有持续性的方式获客,另一方面则体现在触宝的变现能力上,触宝Q3营收仍然保持在了1亿美元之上。 环顾今年前三季度的表现,触宝整体上的增长节奏正在由快向稳过渡。面对寡头纵横且步入存量竞争时代的泛娱乐赛道,用烧钱实现过快的增长显然不符合实际,长远来看也无法维持。 此外,触宝选择更精细化的增长模式,也有助于其在巨头林立的泛娱乐内容赛道,扎扎实实地构筑自己的内容“护城河”,从而提高其长期的核心竞争力。 泛娱乐内容赛道不是一天两天,也不是一年两年就能决出胜负的,在跨越高速增长阶段后,整个市场会更看重内容上的可持续性。优质可持续的内容,将比无脑的烧钱,对用户更具吸引力。 触宝显然早就意识到了这点,选择把钱更多地花在内容生态建设,而非短暂的数据爆发上。目前来看,这种抉择让触宝平稳过渡到了存量竞争时代,并依然保持着预期的增速,以及可靠的变现能力。可以预见,无论未来赛道竞争如何激烈,触宝稳定增长的节奏显然都会难以撼动。

摩登3官网注册_全网最通俗易懂SPWM入门教程,快来白嫖

目录 基本原理 自然采样法 规则采样法 单极性 双极性 如何编写程序 总结 基本原理 SPWM的全称是(Sinusoidal PWM),正弦脉冲宽度调制是一种非常成熟,使用非常广泛的技术; 之前在PWM的文章中介绍过,基本原理就是面积等效原理,即冲量相等而形状不同的窄脉冲加在具有惯性的环节上时,其效果基本相同 。 换句话说就是通过一系列形状不同的窄脉冲信号,相对应时间的积分相等(面积相等),其最终效果相同; 所以SPWM就是输入一段幅值相等的脉冲序列去等效正弦波,因此输出为高的脉冲时间宽度基本上呈正弦规律变化; 这里通常使用的采样方法是:自然采样法和规则采样法; 自然采样法 自然采样法是用需要调制的正弦波与载波锯齿波的交点, 来确定最终PWM脉冲所需要输出的时间宽度,最终由此生成SPWM波; 具体如下图所示,这里会对局部①部分进行简单分析,下面进一步介绍; SPWM波形 局部①的情况如下图所示;简单分析一下整个图形的情况; 锯齿波和调制正弦波的交点为 A和 B; 因此 A点所需时间为 T1, B点所需时间为 T2; 所以在该周期内,PWM所需要的脉冲时间宽度 Ton满足: 最终结论就是,只要求出 A点和 B点位置,就可以求出 ; 自然采样法 这里对于求解A,B位置的推导不做介绍,但是计算量比较大,因此在微处理器中进行运算会占用大量资源,下面再介绍另一种优化的采样方法:规则采样法。 规则采样法 根据载波PWM的电压极性,一般可以分为单极性SPWM和双极性SPWM;下面进一步介绍; 单极性 单极性SPWM在正弦波的正版周期,PWM只有一种极性,在正弦波的负半周期,PWM同样只有一种极性,但是与正半周期恰恰相反,具体如下图所示; 下面取正弦波的正半周期的情况进行分析; 单极性SPWM 正弦波的正半周期整体如下所示;由图中我们可以知道以下几点; 载波PWM的周期为 T; 线段 BO为当前这个等腰三角形的垂线; 线段 BO与正弦曲线 相较于点 A; 所以在该周期内 ,PWM所需要的脉冲时间宽度 Ton满足: 单极性正半周期 具体的推导过程如下: 第一步:由于O点的位置比较好确认,因此,线段 第二步:这里载波锯齿波的最大幅值为1,因此线段 第三步:根据初中学过的相似三角形定理,满足: 最终简化得到: 这里对载波的幅值做了归一化处理,如果锯齿波的最大值为 ,正弦波的幅值最大为 ,则 ; 双极性 只要符合面积等效原理,PWM还可以是双极性的,具体如下图所示;这种调制方式叫双极性SPWM,在实际应用中更为广泛。 双极性SPWM 如何编写程序 上面讲到这里PWM的 时间满足: 其中 为正弦波幅值, 为载波锯齿波幅值; 那么下面以STM32为例,介绍以下如何进行程序编写; 首先得先STM32是如何产生PWM? 通过数据手册可以知道,STM32通过TIM输出PWM,这里有几个寄存器; 计数寄存器: CNT 比较寄存器: CCR (决定了占空比,决定了脉冲宽度) 自动重装寄存器: AAR(决定了PWM的周期) 可能这么说,还是云里雾里的,先看下图; STM32的PWM产生原理 STM32中PWM的模式有普通的PWM,和中央对齐的PWM,上图使用的就是中央对齐PWM; 产生PWM的过程可以分为以下几个过程; 第一步:配置好TIM, 通常时基和ARR都会配置好,这时候PWM的周期就已经被设定好了,另外时基决定了CNT计数寄存器增加一次技术所需的时间; 第二步:刚开始, CNT ,并且 CNT开始增加,这时候PWM的输出都是低电平;当 CNT>CCR之后,PWM输出为高电平; 第三步:当 CNT的值等于AAR之后, CNT开始减少,同理 CNT ,PWM的输出低电平;当 CNT>CCR,PWM输出为高电平; 第四步:循环上述三个步骤; 程序中如何实现? 从上述STM32产生PWM的过程中不难发现, 满足; ① 上一节推导的公式如下: ② 结合①式和②式,可以得到: 上面公式中用CCR表示CCR寄存器中的值,ARR表示ARR寄存器中的值; 最后需要做的三件事 计算出ARR,一般配置TIM定时器的时候能在数据手册找到公式; 调制比,也就是 的系数; 根据③式生成正弦表,然后查表(实时计算因为涉及到较多运算量,所以利用查表,空间换时间,提高效率), 利用PWM的事件去触发中断,更新下一次CCR的值; 正弦函数表: const uint16_t indexWave[] = { 0, 9, 18, 27, 36, 45, 54, 63, 72, 81, 89, 98, 107, 116, 125, 133, 142, 151, 159, 168, 176, 184, 193, 201, 209, 218, 226, 234, 242, 249, 257, 265, 273, 280, 288, 295, 302, 310, 317,  324, 331, 337, 344, 351, 357, 364, 370, 376,  382, 388, 394, 399, 405, 410, 416, 421, 426,  431, 436, 440, 445, 449, 454, 458, 462, 465,  469, 473, 476, 479, 482, 485, 488, 491, 493,  496, 498, 500, 502, 503, 505, 506, 508, 509,  510, 510, 511, 512, 512, 512, 512, 512, 512, 511, 510, 510, 509, 508, 506, 505, 503, 502, 500, 498, 496, 493, 491, 488, 485, 482, 479, 476, 473, 469, 465, 462, 458, 454, 449, 445,  440, 436, 431, 426, 421, 416, 410, 405, 399,  394, 388, 382, 376, 370, 364, 357, 351, 344,  337, 331, 324,  317, 310, 302, 295, 288, 280,  273, 265, 257, 249, 242, 234, 226, 218, 209,  201, 193, 184, 176, 168, 159, 151, 142, 133,     125, 116, 107, 98, 89, 81, 72, 63, 54, 45, 36,    27, 18, 9, 0}; 中断服务函数:…

摩登3平台登录_Linux应用编程之进程的PID与PPID

ID:嵌入式情报局 作者:情报小哥 1进程PID 首先介绍PID的相关知识,为后面介绍fork函数进行铺垫。 01 PID与PPID PID不是控制理论的PID算法,而是Prcess ID的简写。进程PID是当操作系统运行进程时系统自动为其分配的唯一标识符,用于唯一标识此进程的一个整数,而PPID就是进程的父进程的PID。 既然是唯一标识,PID也就相当于我们的身份证,一旦被发放即终生标识,这也便于操作系统更好的管理和标识进程,当然一旦进程生命周期结束,此时的PID便会被释放,可供以后的进程再次使用。 02 特殊PID进程 我们可以通过命令行输入 : ps -aux 来查看当前系统所运行的进程。 PID= 0的进程 : 通常也叫调度进程、idle进程,负责进程之间的调度和切换。该进程是内核的一部分,所有进程的根进程,一般我们是看不到该进程的。 PID = 1的进程 : 通常是init进程,Linux几乎所有的进程都是由父进程产生的,PID=1的进程为父原始进程,比如该进程会读取文件系统来完成操作系统的启动。 PID = 2的进程 : 也叫kthreadd进程,它的任务就是管理和调度其他内核线程。 2两个常用API函数 01 两个常用API 同样我们使用命令行 : man 2 getpid ,从而可以找到该API的详解。 其中getpid表示获得当前进程PID,而getppid是获得当前进程的父进程PID,并且两个函数均能成功返回。 02 实验代码 : 免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

摩登3测试路线_工业电机控制系统方案唾手可得

电机在现代生活中无处不在,从气候控制、电器和商业制冷到汽车、工厂和基础设施。 根据国际能源署(International Energy Agency)的数据,电机占全球总电力消耗的45%,因此电机驱动电子产品的可靠性和能效会对世界各地及各种应用的舒适性、便利性和环境产生影响。 一种提高电机驱动系统能效的方法是,用变速驱动器代替在50 / 60 Hz交流线路电压下驱动的单速电机,从而实现电机的电子速度控制和更高的驱动能效。与开/关调节方法相比,变速控制还可以提供应用层面的高能效。 先进的电机驱动系统的核心是逆变器级,它接收输入的直流电并将其转换成交流电压,频率以所需的速度驱动电机。逆变器含三个半桥,如图2所示。 逆变器的每个半桥相都有一个高边和低边开关,视乎应用需求,可以是硅功率MOSFET,IGBT,碳化硅(SiC)FET或氮化镓(GaN) 高电子迁移率晶体管(HEMT)。 例如,转动泵或风扇,输送电机或机械臂的要求是不同的,工业应用将利用不同的电机技术来适应每种情况:交流电机,有刷或无刷直流,永磁同步电机(PMSM)或开关磁阻为例。 无论应用和技术的范围有多广泛,如果我们探讨工厂环境,驱动系统始终需要满足以下基本的共同要求: 高能效和可靠性 安全可靠性和集成度 耐用和出色的热性能 开发满足所有这些要求的高效可靠的电机驱动器复杂且耗时,但是借助安森美半导体的新的电机开发套件(MDK),使这变得简单。 这综合原型平台包括通用控制器板(UCB),它连接到扩展的电源板选件以创建一个快速启动平台来运行您的电机,从而在设计任何硬件之前对系统进行快速测试、评估和优化。 图4:图形用户接口(GUI) UCB采用功能强大的赛灵思(Xilinx)公司的Zynq®-7000现场可编程门阵列(FPGA) / ARM 系统单芯片(SoC),适用于高端控制和基于人工智能(AI)的应用。UCB与Xilinx开发工具和库完全兼容,并与Trenz Electronic合作开发。 这些电源板含安森美半导体的领先功率器件和模块,及我们广泛产品阵容中的所有其他必要元器件,以开发完整的电机驱动器方案。 首两款电源板采用我们的智能功率模块(IPM),适用于工业和家用电器电机驱动应用。IPM集成用于逆变器的六个功率开关、门极驱动器和一个热电偶,其保护功能包括过压/欠压锁定,防击穿和过流跳闸。 紧凑的IPM电源板(SECO-1KW-MCTRL-GEVK)提供了从市电的交流输入到电动机的交流输出的完整方案。 额定输入电压为230 Vac,它包括一个EMC滤波器和桥式整流器、交错式两通道功率因数校正(PFC)和NFAQ1060L36T IPM作为逆变器级,以及辅助电源、测量和保护。 图5:1 kW板 对于更高的功率水平,采用NFAM5065L4B 650 V智能电源模块。 它的额定输入电压为400 VDC,可以提供高达1 kW的连续功率,并可以在短时间内或通过添加散热器提供高达4 kW的功率。该产品非常适合工业驱动和商业暖通空调和制冷(HVACR)应用。 即将推出的是含我们。这些电机驱动板将支持10 V至100 V的输入电压,功率能力高达1.2 kW,可满足电池供电的和中低电压应用,如电动工具、机器人、自动机器人和无人机。 我们还开发了更多电源板,突出我们广泛的IPM阵容及新模块针对更高功率的电机驱动应用。模块化设计还让我们能够采用一系列PFC方案,从而能够自由组合和匹配功率转换级,以根据您的要求进行优化。 安森美半导体的含一个通用控制平台的通用控制器板(UCB),和一系列不断扩展的电源板,以快速测试和评估全面的电机驱动方案。 基于紧凑的IPM的1 kW 600 V板和基于SPM31的4 kW 650 V板都将在2020年第四季度推出。 还有一个基于安森美半导体TMPIM技术的电源板将于2021年第一季度发布,以驱动高达10 kW的电机。安森美半导体将把更多电源板和扩展的设计支持添加到MDK生态系统中。 ,访问我们的电机开发套件页以了解更多信息。 ,查看赛灵思博客《基于Xilinx Zynq-7000的新的通用控制板(UCB),利用安森美半导体的先进功率级实现最佳的电机控制》,以了解Zynq®-7000 SoC的优势。 免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

摩登3注册网址_中科院辟谣:5nm光刻技术被误读,国产水平在180nm

今年 7月份,中科院发表的一则《超分辨率激光光刻技术制备5纳米间隙电极和阵列》的研究论文引起了广泛的关注。 当时,华为正被美国打压,中国芯片产业成为了国人的心头忧虑。 因此,中科院此新闻一出,遭部分媒体夸张、误解之后,立刻引起了一片沸腾。有媒体将其解读为“中国不用EUV光刻机,便能制造出5nm芯片”,但事实并非如此。 近日,该论文的通讯作者刘前在接受《财经》记者采访时,作出了解答。 刘前表示,论文介绍的新型5nm超高精度激光光刻加工方法,主要用在光掩膜制作上,并非是极紫外光光刻技术,部分媒体混淆了两者的概念。 在光刻过程中,光源通过激光将电路设计图写在光掩膜版上,然后照射在硅片的表面,之后便会进行刻蚀工艺。 可见,光掩膜是集成电路光刻机制造中,不可或缺的重要部分,其对集成电路线宽也起到了一定限制作用。人们常提到的12nm、5nm等,便是集成电路线宽。 长时间来,中国只能制造中低端光掩膜,并且还要依赖海外技术、材料等。 而高端光掩膜版更是成为我国“卡脖子”技术之一。全球高端光掩膜市场主要被美国Photronics、日本印刷株式会社、日本Toppan三者所垄断,余下的市场份额很少。 因此,中科院所攻克的这项新技术,虽然没有部分媒体表述的那样夸张,但对我国高端光掩膜市场的突破,依然具有重要意义。该技术具有完全自主知识产权,并且有成本更低的优点。 但是,该技术仍处在实验室阶段,想要实现商用并非是一件容易事。 而且,我国光刻机技术也有十分漫长的路要走。据AI财经社消息,有半导体产业资深人士表示:目前我国可以实现180nm制程,但仍在试用阶段,还需要攻克。 为何中国光刻机技术发展如此缓慢,有半导体业界人士表示:是产业环境的问题。此前,国产设备不被看好,客户不愿意配合使用与测试。这阻碍了我国光刻机产业的发展。 但是,华为被美国制裁事件发生后,许多相关厂商改变了看法,意识到将关键技术、设备等掌握在自己手中的重要性,中国集成电路产业的发展速度有明显加快。 不过,在中国落后颇多的情况下,想要实现突破并非是一件易事。但即便如此,国产芯片仍要抱有信心,不断追赶。 推荐阅读: 安谋中国推出首款“玲珑”ISP处理器:自主研发,赋能本土! 匡安网络:坚持自主研发创新,筑牢网络安全之堤 青藤云安全“四大利器”,为新基建安全保驾护航 免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

摩登3登录网站_常见加密算法DES、AES和RSA的原理和特点

编排 | strongerHuang 微信公众号 | 嵌入式专栏 今天主要总结下常用的对称性加密算法DES和AES,非对称性加密算法RSA。 1 DES加密算法 1.DES含义 DES全称为Data Encryption Standard,即数据加密标准,是一种使用密钥加密的块算法,1977年被美国联邦政府的国家标准局确定为联邦资料处理标准(FIPS),并授权在非密级政府通信中使用,随后该算法在国际上广泛流传开来。 DES是对称性加密里常见的一种,是一种使用秘钥加密的块算法。秘钥长度是64位(bit), 超过位数秘钥被忽略。所谓对称性加密,加密和解密秘钥相同。对称性加密一般会按照固定长度,把待加密字符串分成块。不足一整块或者刚好最后有特殊填充字符。 常见的填充模式有:’pkcs5’、’pkcs7’、’iso10126’、’ansix923’、’zero’ 类型,包括DES-ECB、DES-CBC、DES-CTR、DES-OFB、DES-CFB。 2. DES算法原理 DES算法的入口参数:Key、Data、Mode。 Key为8个字节共64位,是DES算法的工作秘钥; Data也为8个字节64位,是要被加密或解密的数据; Mode为DES的工作方式,有两种:加密或解密。 3.DES加密原理 DES 使用一个 56 位的密钥以及附加的 8 位奇偶校验位,产生最大 64 位的分组大小。这是一个迭代的分组密码,使用称为 Feistel 的技术,其中将加密的文本块分成两半。 使用子密钥对其中一半应用循环功能,然后将输出与另一半进行“异或”运算;接着交换这两半,这一过程会继续下去,但最后一个循环不交换。DES 使用 16 个循环,使用异或,置换,代换,移位操作四种基本运算。 4.DES算法特点 分组比较短、秘钥太短、密码生命周期短、运算速度较慢。  2 AES加密算法 1.AES含义 AES,高级加密标准,在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。 严格地说,AES和Rijndael加密法并不完全一样(虽然在实际应用中二者可以互换),因为Rijndael加密法可以支持更大范围的区块和密钥长度:AES的区块长度固定为128 比特,密钥长度则可以是128,192或256比特; 而Rijndael使用的密钥和区块长度可以是32位的整数倍,以128位为下限,256比特为上限。包括AES-ECB,AES-CBC,AES-CTR,AES-OFB,AES-CFB。 2.AES加密原理 AES加密过程涉及到4种操作,分别是字节替代、行移位、列混淆和轮密钥加。解密过程分别为对应的逆操作。由于每一步操作都是可逆的,按照相反的顺序进行解密即可恢复明文。加解密中每轮的密钥分别由初始密钥扩展得到。算法中16个字节的明文、密文和轮密钥都以一个4×4的矩阵表示。 3.AES算法特点 运算速度快,安全性高,资源消耗少  3 RSA加密算法 1.RAS含义 RSA加密算法是一种非对称加密算法,这种算法非常可靠,密钥越长,它就越难破解。根据已经披露的文献,目前被破解的最长RSA密钥是768个二进制位。 也就是说,长度超过768位的密钥,还无法破解(至少没人公开宣布)。因此可以认为,1024位的RSA密钥基本安全,2048位的密钥极其安全。 2.RAS算法原理 在了解RAS算法原理之前,先了解一下非对称加密的过程: 非对称加密是通过两个密钥(公钥-私钥)来实现对数据的加密和解密的。公钥用于加密,私钥用于解密。对于非对称的加密和解密为什么可以使用不同的密钥来进行,这些都是数学上的问题了。不同的非对称加密算法也会应用到不同的数学知识。接下来就来看看RSA算法是怎么来对数据进行加密的。 下面是RAS算法的加密算法流程图: 3.RAS算法特点 不需要进行密钥传递,提高了安全性 可以进行数字签名认证 加密解密效率不高,一般只适用于处理小量数据(如:密钥) 容易遭受小指数攻击 常见的几种加密算法先总结到这,如果大家对加密的具体过程感兴趣的话,可以自己上网了解更多算法知识~ 免责声明: 本文部分素材来源网络,版权归原作者所有。如涉及作品版权问题,请与我联系删除。 ———— 免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

摩登3注册登录网_手把手教你制作基于IAR、STM32H7的下载算法

关注+星标公众号,不错过精彩内容 作者 | Lucas 编排 | strongerHuang 本文由作者『Lucas』原创并授权发布,地址: https://blog.csdn.net/lin_duo/article/details/110754189 下载算法对于大部分工程师来说,只需要会使用即可,也不用过多去关心里面实现的方法。当然,对于有时间的工程师来说,了解下载算法还是有一定好处的。 之前给大家分享过基于Keil MDK环境的下载算法制作,今天就来给大家分享一篇基于IAR、STM32的下载算法的制作。 嵌入式专栏 1 环境 IDE环境:IAR EWARM 8.32 单片机:STM32H750VBT6 外部Flash:W25Q64 嵌入式专栏 2 背景、知识介绍 我们为什么需要下载算法?下载算法是在哪里使用的? 如上图所示,我们想通过C-SPY将固件直接下载到Flash是不被允许的,那我们怎么才能实现将固件下载进Flash呢? IAR官方文档《FlashLoaderGuide.ENU.pdf》告诉我们说,我们需要先将固件放在RAM缓存里面,然后通过一个名叫”Flash Loader”的小程序,将代码不断的从RAM搬运到Flash(这里的Flash可以是内部Flash,也是可以是外部Flash)。 上文中提到的”Flash Loader”就是需要我们针对不同的硬件去分别实现的代码,也就是所谓的Flash下载算法。 知识介绍: IAR下载算法一共包括4个文件(.out文件、.flash文件、.board文件、.mac文件)。 1、.out文件是由”Flash Loader”代码生成的,里面包含了我们对QPSI管脚的定义,函数FlashInit()、函数FlashWrite()、函数FlashErase()的实现。 2、.flash文件是一个XML文件,里面包含了一些必要的元素和一些不必要的元素,仅针对必要元素做一个简单介绍 exe:指向.out文件 flash_base:Flash的基础地址 page:Flash每页的大小 block:对应Flash有多少个扇区,每个扇区多大。(block元素对应Flash的扇区还是块,待考证) 3、 .board文件同样也是一个XML文件。可以由 *** 进行多个.flash文件设置。每个pass内包含了两个必要的属性 range:表面了Flash的起始地址及结束地址 loader:当前pass调用那个下载算法的路径 4、IAR每次仿真下载完程序是从当前工程的main函数开始运行的。如果我们将代码下载到了0x90000000地址处,我们并没有开启内存映射,是不可以仿真的。这时候就需要采样.mac文件作为一个启动脚本,当程序仿真下载完成后,跳转到0x08000000处开始运行。在0x08000000处进行内存映射,然后马上跳转到0x90000000处,就可以进行仿真了。 嵌入式专栏 3 制作思想 下载”Flash Loader”开源代码 创建一个空工程,将”Flash Loader”开源代码里面的文件添加到工程 完成函数FlashInit()、函数FlashWrite()、函数FlashErase()。 生成.out文件 制作.flash文件 制作.borad文件 根据需要制作.mac文件 嵌入式专栏 4 源码说明 上面已经介绍了下载算法制作的一些基础知识及制作思想,下面我们正式开始动手制作下载算法。 1、下载FlashLoder开源代码。 传送门: https://files.iar.com/public/cmsis/ 下载后的文件内容如下图所示: “flash_loader.c”、“flash_loader.h”、“flash_loader_asm.s”、”flash_loader_extra.h”四个文件是供C-SPY调用的,我们不应该去修改文件内容。真正需要我们去修改的内容是”template”文件夹下的”flash_loader_ram.c”文件。 2、 为了方便,我找到IAR安装路径(“C:\Program Files (x86)\IAR Systems\Embedded Workbench 8.3\arm\src\flashloader\ST”)下的”FlashSTM32H7xx_QSPI”文件夹,对这个文件内容进行更改。我们将”FlashLoder”代码添加进去,并添加相应的路径。 (注:“flash_loader_ram.c”文件当前工程下被改名为”FlashSTM32H7xx_QSPI.c”)。 3、补充函数内容 A.补充FlashInit函数内容 B.补充FlashWrite函数内容 C.补充FlashErase函数内容 4、生成.out文件由三个需要注意的地方 A.我们需要将代码下载到RAM里面执行,IAR->Option->Linker->Config配置如下: B.IAR->Option->Linker->Output配置的是输出.out文件的内容: C.当前工程没有main函数,程序运行的第一个函数将是FlashInit函数,对IAR->Option->Linker->Library配置如下: 5、制作.flash文件,如下图: 6、制作.board文件,如下图: 7、对于H750内存映射外部Flash还需要制作.mac文件,内容如下: 文件内容就很好理解了,下载完成后,pc指针指向中断向量表的Reset_Handler函数,堆栈指针指向程序运行的首地址。这样每次程序仿真下载完成后,就从0x08000000处开始运行。我们可以把Boot程序放在这个地址,Boot程序里面进行内存映射,然后跳转到0x90000000处。 嵌入式专栏 5 效果展示 我们制作好上诉四个文件过后,创建一个工程(该工程要运行在0x90000000处),对这个工程进行简单配置。 IAR->Option->Debugger->Download下,配置如下: IAR->Option->Debugger->Setup下,配置如下: IAR->Option->Linker->Edit下,配置如下: 在代码初始的地址,还需要加上中断向量表地址SCB->VTOR = 0x90000000; 做完上诉配置后,我们进行仿真下载,如下图所示,我们可以看到main函数已经存在与0x90003588处,并且可以进行仿真,说明我们配置是正确的。 将代码全速运行,可以看见串口显示正式我们程序设置的输出。 至此,关于IAR下下载算法的制作与验证就全部介绍完了。 参考资料: FlashLoaderGuide.ENU.pdf EWARM_DebuggingGuide.ENU.pdf FlashLoader源码 ———— END ———— 推荐阅读: 精选汇总 | 专栏 | 目录 | 搜索 免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

摩登3登录网站_软件实时性: “快是优点么?”

关注+星标公众号,不错过精彩内容 作者 | 傻孩子 转自 | 裸机思维 下面分享一篇王工(网名:傻孩子)整理的文章: 【序】 不知道你发现没有,平时我们讨论嵌入式软件开发时总绕不开与实时性(Real Time)相关的话题。相信不少朋友和我一样是通过实时性操作系统(Real Time Operating System, RTOS)第一次接触到实时性概念的——我记得那还是大学时代、参加机器人竞赛的时候。工作以后自信地以为加深了不少对实时性的本质认识——现在看来其实还未摸到门道。就这样浑浑噩噩一直到毕业后的第八年,因为工作变动的原因,我被迫要在一周内要做一个实时性原理相关的研究报告,也就在那时,我体会到了疯狂练功走火入魔的感觉:走路在思考、吃饭在看资料、头一直发烧一样的微微发热、甚至连睡觉都在梦中推演模型——头发一把一把的掉,幸好有截稿时间,否则真的要秃了。 也就是经过那一次,我突然发现自己之前对实时性的认知可谓徒有其表,甚至从未做对实时性模型本身的定量分析——所幸,那次研究报告如期交付,工作变动也如愿以偿。然而,3年后我发现“我又双叕天真了”——那是有一次,我正跟人讨论嵌入式基本范式,就突然一个瞬间,脑海中原本毫不相关的一些模型猛地被联系到了一起(音效请脑补): 我甚至本能的立即意识到:之前自己在某篇文章中“言之凿凿”的推论过程其实存在巨大漏洞——当然,那本书从未出版过,而且会闲到对我进行深究的人估计也没有几个。 今天,即便我非常确信——在前方至少还有几道数学的深谷阻碍着我触碰“实时性”的圣杯——然而我并不是计算机科学家,现有结论对我来说已经足够装逼 。回头看来,根据我的经验以及与朋友讨论的结果,大致认为大部分人对实时性的认知过程通常会分以下几个阶段: Lv1:“实时性” = “越快越好”,认为用好中断是保证实时性的关键;这类朋友通常最擅长的是裸机下的“前后台系统”; Lv2:“实时性” = RTOS,认为选一个好的RTOS,或者会用RTOS就可以保证实时性;这一阶段的朋友对RTOS充满了好奇,以编写自己的RTOS为“ 终(zhong)极(er)目标”; Lv3:“实时性” = 任务拆分,这一阶段已经能正确的理解实时性窗口的概念,意识到实时性并不意味着越快越好,但也认为“在可能的情况下”“快一点响应事件没啥坏处”;这一阶段的朋友可能已经可以在裸机和RTOS之间自由的反复横跳,无论是裸机下的状态机还是RTOS下的线程都已了如指掌、任务间通信更是游刃有余; Lv4:这一阶段开始思考实时性模型的特点,并逐渐意识到模型本身其实隐含了足以颠覆过往所有关于实时性认知的秘密;到达这一阶段的朋友通常觉得没必要、也没心思继续思考实时性更本质的数学意义——因为此时获得的结论已经足够了应付几乎所有的工程开发了。顺便说一下,我就在这里 。 Lv5:到了这个阶段,不仅脑洞大开、战斗力惊人、估计打针也没法阻止你抓破脖子了吧 ——以上只是暴露年龄的玩笑,但肯定 可以水几篇SCI论文了…… 在理解了实时性的模型以后,我(本能的排除了自己比较笨这个可能性,然后)意识到:其实这一过程完全没必要如此漫长和曲折——很多结论和道理是如此简单——不仅书本上有,而且解释和学习起来都不费什么力气。可能这就是“挠破头”想通某个道理之后,回头再看时忍不住要“苦笑”时的感受吧。 按照约定,为了将经验和知识分享给大家,从本文开始,我将以几篇文章的篇幅:从基础模型开始,由浅入深、由理论到实践,推演关于实时性的几个重要结论——从而直接跳跃到Lv4的认知阶段。如果你看了这个系列后有什么话想说的、想问的,还请在评论区写下您的留言。求评论、求转发、求收藏。 【击碎 “唯快不破” 的神话】 图1展示了一个标准的实时性模型: 基于物理世界客观法则的限制,很多应用在制定需求说明的时候,从某一个事件发生的时刻计算,会规定一个死线(Dead Line),即:一旦事件发生了,如果不在这个死线之前完成整个对事件的处理,就视作失败; 这里,从事件发生到死线这段时间长度,习惯上称为实时性窗口。当事件发生时,只有在死线内任意时刻完成了对事件的处理,才能称为实时性得到了满足; 容易注意到,处理事件的过程也需要消耗时间——一般称为事件处理时间; 图1 实时性基本模型 考虑一个有趣的问题:对一个实时性任务来说,实时性窗口内的时间,其价值是一样的么?换句话说,横竖处理事件消耗的时间是不变的,早点做迟点做都是做,有什么区别么? 图2 实时性窗口内不同时间段完成事件响应 对比图2所示的三种情况,可以很清楚的得出结论:理论上,从满足实时性的角度出发,在时间窗口内任意时段完成对事件的处理都满足实时性要求;早做没有任何额外的好处,“踩着上课铃到校”也没有任何惩罚——简单说就是早做迟做无所谓。 你说“我不管,我不管”,既然什么时候做都一样为什么不能“尽早做”?“你也说了尽早做没啥不好”,“中断来了,服务程序执行了,我想让它迟点执行也做不到啊?” 为了回答这个问题,我们不讲大道理,先看一个常见的例子: 超级循环里有三个任务A、B和C; void main(void){ ...    while(1) {   task_a();   task_b();        task_c();    }} 每个任务都使用轮询的方式在等待一个来自芯片外界的事件发生(先不考虑存在中断的情况); 当一个任务函数被执行时会检查对应的事件是否已经发生,如果确实已经发生,则执行后续的处理;反之则立即退出任务函数——释放处理器; A、B、C三个事件的实时性窗口分别为10ms, 6ms和4ms;处理三个事件的处理程序分别需要4ms、3ms和0.4ms。如图3所示: 图3 三个事件的实时性窗口和事件处理时间示意图 需要强调的是,task_a()、task_b()和task_c()三个函数的策略本质上都是一样的——“一旦检测到事件立即处理,绝不迟延”! 基于上述事实,容易发现:假如某一时刻,A、B、C三个函数都处于触发状态(等待处理的状态),而超级循环恰巧进入task_a()执行——这种情况其实比想象中容易发生,比如从task_a()退出到task_c()执行完成期间,事件A触发了;从task_b()退出到task_c()执行完成期间,事件B触发了;在task_c退出()之后恰巧事件C又触发了……此时,任务A会立即响应,消耗4ms的时间来完成事件处理;当从task_a()函数退出时,剩余给task_b()的时间窗口只有2ms(6ms–4ms),而事件B的处理函数需要3ms——显然事件B的实时性是无法得到保证的——当然事件C已经死得透透了…… 图 4 “越快处理越好” 导致其它任务无法满足实时性要求 通过上面的例子,我们知道“越快处理越好”是值得反思的——至少会存在情况导致系统在某些时刻无法满足实时性要求;那么从模型上来说,如何理解这一现象呢? 让我们重新来看图1所示的模型: 实际上,如果单纯从一个实时性任务自身出发来看,的确在实时性窗口内,任意时间完成事件的处理都是一样的;然而,通过前面的举例我们其实可以发现,当一个系统中存在多个实时性任务时,虽然一个实时性窗口内的任意时间对任务自己都是等价的,但越靠前的时间对“别人”来说是越宝贵的: 当你使用“越快越好”策略时,你不会有额外的收益,而实际上是走了别人的路,让人无路可走——典型的损人不利己; 当你在别人需要的时候,在自己实时性得到保证的前提下,尽可能让出对你没有额外价值的靠前的时间,实际上是一种“利他主义”; 当所有的任务都采用这种利他策略时,就变成了“人人为我,我为人人”的合作策略——这种情况下,如果数学证明整个系统一定存在一个方案来满足所有任务的实时性需求,那么利他策略一定能找到这样的解决方案。 图 5 一种可能的解决方案(不是唯一) 作为一个系统开发者,我们显然是需要从全局考虑的,因此完全没有必要从单个实时性任务的自私视角来看问题,因此结论就变得更为直接:实时性窗口内越靠前的时间价值越高,从总体上来看“单纯”越快越好的策略对实时性是有害的。 既然单纯的“越快越好”不可取,且“实时性窗口内”越靠前的时间越有价值,是否意味着,其实“越靠后越好呢”? 为了验证另外一个极端“越慢越好(越靠后越好)”是否是正确的,我们不妨以同样的例子来推演一下,仅仅更新task_a()、task_b()和task_c()的执行策略:从“越快越好”变为“越慢越好”——这实际上意味着: 每一个事件处理任务都清楚的知道“距离事件发生已经过去了多长时间”; 为了做到“卡着上课铃进教室”,不到最后时刻,绝对不执行任务处理。 根据这一算法,我们推演得到以下的尴尬情形: 图 6 过于谦让的后果…… 不妨分析下过程:首先,task_a()执行,在了解到距离自己的最后时刻还有6ms的实时后毅然的决定把宝贵的时间留给他人;于是,CPU来到了下一个任务函数,基于类似的原因,task_b()也摆摆手……最终第一轮三个任务都决定再等一等…… 如此谦让(浪费)了3ms以后,任务B终于决定下场——在执行了3ms任务处理后,成功的将随后的任务C逼上了绝路……随着A的沦陷,大型翻车现场成就达成…… 从结论上看,另外一个极端“越慢越好”也是走不通的。那么究竟如何才能从模型分析的角度出发得出一个令人信服的、容易理解的、满足所有任务实时性需求的方法呢?关于这一点,我们下次再聊。 【小结】 从系统全局来看,实时性窗口内的时间越靠前越有价值,应该尽可能留给别的更紧急的任务来使用。事件发生时“越快处理越好”的策略直接占用了它人的“生命线”——当所有的任务都试图“损人不利己”时,那么整个系统没有一个任务是可以保证自己的实时性不被它人破坏的。从结论上看简单的“越快越好”策略在实时性系统中是不允许的。 ———— END ———— 推荐阅读: 精选汇总 | 专栏 | 目录 | 搜索 免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!