首页 > 其他分享 >MCU芯片架构设计

MCU芯片架构设计

时间:2023-07-16 09:11:06浏览次数:41  
标签:架构设计 芯片 Flash MCU PLL CPU 外设 时钟

目录

1.应用场景

  • 主要是I2C\UART\SPI协议

2.Cortex-M3 MCU成本与工艺选型

  • 按照晶圆进行收费,28nm,12寸晶圆,400万美金
  • 晶圆是圆形的,die是方形的,会存在浪费
  • productivity - 大约是理论数量(晶圆总面积/裸片面积)的50%-60%
  • yield - 生产工艺问题导致在晶圆上切出的die存在问题,存在良率问题
  • package - 封装,将die的IO和外部的IO连在一起
  • test - 芯片测试费用,ATE测试
  • IP - ARM Core,主要是license费用
  • volume - 数量
  • 随着生产数量增加,成本越低。
  • 工艺升级,Mask费用会增加,yield也会上升,最终的单片成本会降低
  • MCU在28nm或者是40nm,主要是因为MCU会高度集成一些模拟的器件Flash,AD/DA。模拟的工艺往往落后于数字,模拟工艺还停留在40nm。
  • 工艺比较先进的芯片,Flash往往作为分离期间,Soc通过Flash Controller对Flash进行控制

3.Cortex-M3 MCU成本与工艺选型

  • Paper Floor Plan是按照比例进行放大的,便于后端人员进行布局布线
  • 面积受限于Flash和RAM模拟部分的面积

4.Cortex-M3 MCU功耗预估

  • track - 指的是CMOS的高度,track越高延时越小,有9-track和12-track。

5. Cortex-M3 MCU整体架构

  • core选择的是Cortex M3
  • 存储系统选择:Boot-ROM、Flash、SRAM,Boot-ROM和Flash是可选择的,可以通过Boot-ROM进行启动,也可以通过Flash进行启动
  • DMA配合CPU进行数据搬移,数据可以从内存中的一部分搬移到另外一部分,还可以从外设到内存,或者是从内存到外设。
  • Cortex M3是一个RICS的系统,内存读写通过load-store指令,不管什么读写都需要经过寄存器间接进行load或者store。load是将数据从SRAM导入到CPU,Store是将数据从CPU导入到SRAM。
  • load-store指令只能存取32bit数据,如果在内存中存取很大的数据效率就会比较低,DMA是一个硬件加速系统,可以解放CPU。
  • AHB 4*2,四个Master和两个Slave
  • APB不支持流水,每次固定两拍
  • CPU与外设通信:中断(外设发起中断,CPU收到之后执行中断使能程序)、CPU主动查询外设的状态(对CPU的负荷要求高)、设置状态寄存器,当外设完成任务的时候将寄存器置为1,CPU读取状态寄存器(类似于邮箱通信)

6.Memory Map

  • program指的是Flash,因为默认是Flash进行启动,所以首地址一般是Flash地址
  • Boot-ROM进行启动,会进行地址偏移
  • Reserved表示保留地址空间
  • 外设是按照4K的地址均匀分布的,4K地址均匀分布,APB经过地址译码之后都是规整的。

7.MCU电路设计,系统集成-为什么设计CRG

  • CRG - Clock and Reset Generator
  • 时钟从PLL(A)走出之后,到达B和C的时间是不同的,所以产生了skew,Tskew = 7ns-5ns = 2ns。B和C虽然是同一个时钟,但是B和C的时钟相位不同。
  • setup时间的计算就是从同一个时钟起点出发,计算寄存器的数据端和时钟端的差
  • 为了让时钟从A到B和C的时间尽可能相同,可以在时钟从A点出来之后插入buffer,两个时钟路径的buffer可以不同,做时钟树的平衡。
  • PLL分频,其中有很多控制。压控振荡器是通过数字系统进行控制的。
  • 时钟有外部时钟和PLL时钟,可以在时钟输入端加一个Mux,当PLL时钟倍频或者分频的系数没有配置好的时侯,使用外部时钟,当PLL倍频和分频完成之后切换到PLL的时钟。
  • 在DFT测试的时候,会将寄存器串联起来,寄存器反馈给PLL压控振荡器的分频或者倍频数是一直在切换(toggle)的,PLL产生的时钟就会乱掉,无法完成DFT测试。

8.MCU电路设计,系统集成-IO MAP

  • wafer上切的die的越小,成本越低,die的大小取决于数字逻辑和模拟IP,还取决于边长,边长就取决于IO接口。不同时使用的接口可以进行复用。

9.系统控制器

标签:架构设计,芯片,Flash,MCU,PLL,CPU,外设,时钟
From: https://www.cnblogs.com/Icer-newer/p/17552561.html

相关文章

  • 闲聊AI芯片和存算
    闲聊AI芯片和存算引言存算这个领域早在1990就开始被讨论[1][2][3][4][5](最早的建议可以追溯到1970[6]),当时的主要思路还是停留在怎么把计算的logic和DRAM做到一起,受限于存储器工艺和逻辑工艺的不兼容问题,这方面的研究进展并不是很顺利。同时memorywall的问题对于主流计算机技术......
  • 芯片设计全流程
    芯片设计全流程(包括每个流程需要用到的工具以及需要参与的工作人员)  设计rtl设计工程师要懂低功耗设计方法,跨时钟域的解决方案,面积,功耗,逻辑综合验证检验rtl级的HDL设计是否实现了Spec需要的功能等;验证工程师要懂设计,能看懂rtl,能够理解设计的各种方法;作为soc验证......
  • 空气净化器语音播放方案,低功耗NV400F语音芯片
    随着科技的不断进步和人们对生活质量的要求不断提高,空气净化器也逐步进入人们的日常生活中。而随着人工智能技术的发展,越来越多的家电设备开始具备语音交互的功能,极大地方便了用户的使用体验。在实现空气净化器的语音播放功能上,选择的低功耗NV400F语音芯片,为用户带来了更加智能、便......
  • 万字长文 | Hadoop 上云: 存算分离架构设计与迁移实践
    一面数据原有的技术架构是在线下机房中使用CDH构建的大数据集群。自公司成立以来,每年都保持着高速增长,业务的增长带来了数据量的剧增。在过去几年中,我们按照每1到2年的规划扩容硬件,但往往在半年之后就不得不再次扩容。而每次扩容都需要花费大量精力。为了解决包括扩容周期......
  • 动能芯片 | DPU1.1S—高性能、低功耗4口高速USB2.0HUB控制器芯片
    DPU1.1S是一款高性能、低功耗4口高速USB2.0HUB控制器,上行端口兼容高速480MHz和全速12MHz两种模式,4个下行端口兼容高速480MHz、全速12MHz、低速1.5MHz三种模式。   DPU1.1S采用状态机单事务处理架构,而非单片机架构,多个事务缓冲区,这样减小了芯片的系统响应时间,用最少的硬件......
  • 防干扰/抗噪LCD液晶段码显示驱动芯片VK2C21A/AA SSOP28 适用于适用于单相电表,温控器LC
    概述:VK2C21是一个点阵式存储映射的LCD驱动器,可支持最大80点(20SEGx4COM)或者最大128点(16SEGx8COM)的LCD屏。单片机可通过I2C接口配置显示参数和读写显示数据,也可通过指令进入省电模式。其高抗干扰,低功耗的特性适用于水电气表以及工控仪表类产品。QT951特点:•工作电压2.4-5.5V•......
  • 如何实现saas 权限架构设计的具体操作步骤
    SaaS权限架构设计概述在SaaS(SoftwareasaService)应用中,权限管理是一项非常重要的功能。它允许系统管理员对用户的访问和操作进行精细的控制,确保系统的安全性和数据的隔离性。本文将介绍实现SaaS权限架构设计的流程和每一步需要做的事情,以及相应的代码示例。流程图下面的表格......
  • M1/M2 芯片的 Mac Mini 如何阻止休眠
    MacMini出了M1M2芯片的产品。但是和以往不同,这次在首选项,节能里面,不再有以往的设置多久睡眠/休眠的地方了。找了一圈,谷歌百度都没有答案,全都是老款的Mac的设置。那我们使用阿里云盘下载很多内容时怎么办呢?别说阿里云盘里有设置:有传输任务时电脑不休眠。实测,这个选项在M1/M2芯......
  • 架构设计
    架构设计主要目的是为了解决软件系统复杂度带来的问题。复杂度来源于高性能、高可用、低成本、安全、扩展性等方面。基本原则:合适、简单、演化。起始时先从简单出发,后续再根据需要逐渐迭代演化,不要为难以预测的未来过度设计。高性能方案:读写分离、分库分表、NoSQL、缓存。......
  • Java 亿级项目架构设计与落地应用(24周)
    目录:阶段一:程序员的成长目标与方向阶段二:架构师必备基本功-需求分析阶段三:高层架构设计-从无到有描绘系统蓝图阶段四:系统架构设计-概要设计阶段五:系统架构设计-详细架构设计,走向真正落地阶段六:DDD领域驱动架构设计-复杂业务应对之道阶段七:亿级电商订单系统-架构设......