PSoC系统中组织结构及内核原理分析课程

上传人:沈*** 文档编号:187151438 上传时间:2023-02-11 格式:PPT 页数:30 大小:234.50KB
收藏 版权申诉 举报 下载
PSoC系统中组织结构及内核原理分析课程_第1页
第1页 / 共30页
PSoC系统中组织结构及内核原理分析课程_第2页
第2页 / 共30页
PSoC系统中组织结构及内核原理分析课程_第3页
第3页 / 共30页
资源描述:

《PSoC系统中组织结构及内核原理分析课程》由会员分享,可在线阅读,更多相关《PSoC系统中组织结构及内核原理分析课程(30页珍藏版)》请在装配图网上搜索。

1、1PSoC系统结构系统结构PSoC内部可分为内部可分为4部分:部分:PSoC内核可编程数字系统可编程模拟系统系统资源2PSoC总体结构图总体结构图 3PSoC内核内核l包括:CPU内核、SRAM、监控ROM(SROM)、Flash存储器、中断控制器、睡眠与看门狗、一组时钟源lCPU内核M8C采用哈佛(Harvard)结构l全面可配置的内部CPU时钟l2KB32KB的Flashl128B2KB的SRAMlCPU内核可对所有用户单元组成的特殊功能寄存器进行存取操作,这一能力使PSoC能对其所有用户模块进行全面重构l内核的功能部件可由系统总线通过通用I/O口与外部引脚构成连接l每个引脚具有8中不同的

2、驱动模式,不同的驱动模式为外部连接提供了强大的灵活性,引脚上高低电位变化或最近一次读操作时引脚上数据的改变都会触发一次外部中断4可编程数字系统可编程数字系统l由14个数字行组成,l1个数字行包含4个基本数字单元l4个数字单元包括2个数字基本单元(DBB)和2个数字通信单元(DCB)l都可以配置为具有独立功能的数字用户模块,如:定时器、计数器、PWM等l多个DBB可以组成一个超过8位的数字用户模块lDCB可以配置成主或从SPI模块或全双工UART模块l每个DBB或DCB的输入和输出都可以通过行输入总线、行输出总线或行广播总线与其他数字单元相连,也可以经由行输入或输出中线到全局输入或输出总线与通用

3、I/O相连l数字单元的输出也可作为模拟RC单元的时钟同步信号 5可编程模拟系统可编程模拟系统l模拟阵列按列排列,1、2或4列l每一列有3个基本模拟单元l每一列的第一个单元被称为连续时间模拟单元(CT),第二、三个单元被称为开关电容模拟单元(SC)l每一列都有一个输入时钟多路选择器,可选择系统时钟或来自数字单元的时钟信号,主要用于SC单元,其大致决定了模拟输入信号的带宽l每一列还有一个模拟总线和一个比较总线 6系统资源系统资源包括:l数字时钟l带32位累加器的乘法器l采样抽取器:用于数字信号处理lI2C接口:能实现I2C主从设备功能l内部参考电压:1.3Vl开关式升压泵(SMP)l模拟多路复用器

4、lUSB接口:支持5个端点,全速12Mb/Sl系统复位7PSoC内核系统内核系统 PSoC内核是系统的核心部件,其总体结构如图所示包括:CPU内核M8C、SROM、Flash存储器、SRAM、中断控制器、通用输入输出、睡眠、看门狗、一组时钟源 8M8C CPU内核内核 lCPU内核M8C采用哈佛(Harvard)结构l处理器时钟频率范围93.7K24MHzl24M时钟下可达4MIPS的运算能力 9内部寄存器内部寄存器 M8C有5个内部寄存器,用于指令的运行,分别为l累加器(Accumulation,A)l索引寄存器(Index,X)l指令计数器(Program Counter,PC)l堆栈指针

5、(Stark Pointer,SP)l标志寄存器(Flags,F)除了指令计数器PC是16位,其余均为8位。10地址空间地址空间 M8C具有三块地址空间:ROM、RAM、寄存器lROM包含SROM和片上FlashlFlash被分配成64Byte的若干小块l寄存器地址空间(512Byte)被分配成两组,即Bank0(配置空间)和Bank1(用户空间)。通过设置标志寄存器(F)的XIO位可以实现对两组寄存器区的选择 11SRAM lM8C是一种8位CPU,8位地址总线用于SRAM和寄存器的寻址,寻址范围仅为256Byte。l为提高SRAM的容量,PSoC对其SRAM采用了分页存储结构。l这里需要用

6、到3个页指针寄存器和标志寄存器的PgMode字段,由它们共同决定所访问的SRAM页,而由地址总线上的地址决定访问该页的哪个存储单元。12中断控制器中断控制器 l中断控制器为PSoC提供了一种程序转移机制,当中断发生时,不用考虑当前正在执行的程序和任务,就可改变流程,跳转到新的地址去执行中断处理程序。l中断处理程序结束后,程序又将接着从发生中断的地方往下执行。13中断控制器结构中断控制器结构由上图可以看出,一个中断从产生到传递到M8C核的中断请求端,需同时满足以下条件:l硬件中断源产生中断,如定时器溢出或GPIO引脚产生中断;lINT_CLRx1(该中断没有被清除),即该中断成为一个提交中断(P

7、osted Interrupt);lINT_MSKx1(该中断没有被屏蔽),即提交中断成为一个挂起中断(Pending Interrupt);lGIE1,即全局中断使能打开。l优先级编码器对在所有挂起中断中进行排序,首先送出优先级最高的中断由M8C核响应。14中断处理过程中断处理过程 l激活中断请求l执行完当前指令l执行内部中断例程,需要耗时13个周期。在此期间,执行如下操作:l将PCH(PC15:8)、PCL(PC7:0)和CPU_F按顺序压栈;l将CPU_F清0,此时GIE被置0,因此其他中断被暂时禁止;l将PCH清0;l从中断控制器读取中断向量并装入PCL中;此时PC就指向中断向量表中的

8、合适地址,比如,对于GPIO中断,此值为001Ch。l执行该中断向量。中断向量表中典型的中断向量就是一条LJMP指令,跳转到用户的中断处理程序(ISR)。l执行ISR。ISR中,可以通过设置GIE1重新开放中断,以实现中断嵌套,但需要注意避免堆栈的溢出。l执行中断返回指令RETI返回ISR。ISR将CPU_F、PCL和PCH从堆栈中弹出,恢复这些寄存器原来的值;将CPU_F的GIE重新被置为1,中断再次使能。1.继续执行下一条指令,即发生中断前指令的下一条。如果没有挂起中断,程序将继续处理这些中断。15中断优先级中断优先级 l在同一指令周期内,如果有多个挂起中断发生,那么就要考虑中断的优先级,

9、中断优先级编码器会将优先级最高的中断请求的中断向量送出。PSoC的中断源及其优先级下表所示,0级最高。16中断相关寄存器中断相关寄存器l中断清除寄存器(INT_CLRx)用于清除单个中断源的提交中断,每一位对应一个中断源l中断屏蔽寄存器(INT_MSKx)用于产生单个中断源的挂起中断l中断向量清除寄存器(INT_VC)17通用输入输出端口(通用输入输出端口(GPIO)lGPIO负责将PSoC内部设备与I/O引脚进行连接,为M8C内核与外界提供了数据交换接口,PSoC的数字和模拟系统提供了多种输入输出驱动模式。18GPIO结构与类型结构与类型 lGPIO包含输入缓冲器、输出驱动器和配置逻辑,配置

10、逻辑用于将PSoC的数字和模拟系统连接至外部引脚,其配置信息由相关的寄存器位存储。lPSoC的输入输出引脚分为8个一组,称为端口(Port),因此每个端口对应8个GPIO。每个GPIO可以配置为以下3大类型:由软件控制的数字输入输出(数字IO)数字可编程模块的输入输出(全局IO)模拟可编程模块的输入(模拟输入)19GPIO驱动模式驱动模式l每个GPIO提供了多种输入输出驱动模式,同时还具有中断能力。所有GPIO都可以作全局IO和数字IO,单只有部分GPIO在内部能与可编程模拟模块相连而作为模拟输入。(详见教材P132)20数字数字IO l可通过读写端口数据寄存器PRTxDR实现对IO端口的读写

11、l向PRTxDR写入时,每个GPIO对应1位,GPIO将根据写入的数值和所设置的驱动模式驱动相应的管脚lM8C通过读取PRTxDR获得端口值,即当前端口引脚电压值所对应的逻辑值21全局全局IO l通过设置端口选择寄存器PRTxGS和端口驱动模式位寄存器PRTxDMx实现。l若设为全局输入:PRTxGS相应位置位,设置PRTxDMx选择高阻抗数字输入模式;l若设为全局输出:PRTxGS相应位置位,设置PRTxDMx选择高阻抗数字输入以外的其他模式注:以上配置可通过PSoC Designer的互联视图中的引脚设置框选择 22模拟输入输出模拟输入输出 l模拟输入配置可在PSoC Designer的互

12、联视图中的引脚设置框选择高阻抗模拟输入模式。l模拟输出功能是通过模拟列总线和模拟输出驱动器,而非GPIO实现的。23GPIO中断中断 l每个GPIO都可以单独设置中断功能l中断触发可以选择引脚高电平触发、低电平触发或引脚电平变化三种触发方式 24GPIO中断步骤中断步骤 l在端口中断控制寄存器PRTxICx中设置中断模式;l在端口中断使能寄存器PRTxIE中设置相应位以开启中断;l设置中断屏蔽寄存器INT_MSKx中GPIO相应的中断屏蔽位;l设置全局中断使能GIE。以上步骤中前两步可以通过PSoC Designer的互联视图中的引脚设置框的中断选项设置。所有引脚中断都以线或的方式连接到系统G

13、PIO中断,任何一个引脚中断都将引发GPIO中断。因此当有多个引脚的中断使能都打开时,用户中断处理程序中必须确定哪一个引脚是中断源。25GPIO寄存器寄存器 lPRTxDR(端口数据寄存器)lPRTxIE(端口中断使能寄存器)l PRTxGS(端口全局选择寄存器)26GPIO寄存器(续)寄存器(续)lPRTxDMx(端口驱动模式位寄存器)27GPIO寄存器(续)寄存器(续)lPRTxICx(端口中断控制寄存器)28多时钟源多时钟源lPSoC的多时钟源包括三种振荡器即内部主振荡器(IMO)、内部低速振荡器(ILO)、外部晶体振荡器(ECO)和一个锁相环(PLL),它们的功能如表所示。29睡眠和看门狗定时器睡眠和看门狗定时器 l略30Thank you!

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

相关资源

更多
正为您匹配相似的精品文档
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!