PSOC 原理及操作教程 - Theory and Operation of PsoC
PSOC 原理及操作教程
Theory and Operation of PsoC
(草稿)
(Draft)
北京理工大学汽车电子技术创新中心(AETC)
BIT-Automotive Electronics Technical Innovation Center
2007 年 6 月
1
PSOC 原理及操作教程 - Theory and Operation of PsoC
内容介绍
汽车已经进入了电脑时代,单片机(微控制器)是汽车电子系统的核心。随着单片机/微控
制器技术的发展,出现了新的 SoC(System on Chip 单片系统)技术,它将固定的单片机系统
模块化,通过编程实现灵活配置,将模拟处理电路集成到系统中,具有体积小、成本低、使用
灵活的特点,具有广阔的发展空间。
本教程结合美国赛普拉斯(Cypress)公司的 Psoc 进行介绍,包括 Psoc 特点、原理,结合
程序设计实例进行介绍。
本教程为 AETC 中心本科生全校实验选修课操作教程,也可作为 Psoc 初学者的入门参考教
程。
2
PSOC 原理及操作教程 - Theory and Operation of PsoC
目 录
第一章 概述......................................................................................................................................... 4
1.1 什么是 SOC?......................................................................................................................4
1.2 PSOC 与单片机相比的特点............................................................................................. 4
第二章 PSoC 的结构与特点...........................................................................................................6
2.1 PSOC 的总体结构................................................................................................................6
2.2 与传统单片机系统设计方案的比较.............................................................................. 9
第三章 PSoC 集成开发环境......................................................................................................... 11
3.1 PSOC Designer 的安装..................................................................................................... 11
3.2 PSOC IDE 的使用.............................................................................................................. 15
3.3 器件编程器......................................................................................................................... 19
3.4 连接用户模块.....................................................................................................................22
3.5 管脚互连..............................................................................................................................23
3.6 应用程序编辑器................................................................................................................ 27
3.6 调试....................................................................................................................................... 29
第四章 PsoC 程序设计示例..........................................................................................................32
4.1 A/D 采集与 LED 显示...................................................................................................... 32
4.2 数字脉宽调制 PWM 模块实验.....................................................................................36
4.3 键盘中断和定时器溢出中断实验.................................................................................37
4.4 AD、DA 和 LED 显示实验.........................................................................................41
4.5 电压比较器模块的使用——正弦信号到方波信号的转换...................................43
4.6 动态重配置实验................................................................................................................. 45
附录 PSoC 功能描述.......................................................................................................................51
3.1 PSOC 内核............................................................................................................................51
3.2 PSOC 可编程数字系统.....................................................................................................60
3.3 PSOC 可编程模拟系统.....................................................................................................67
3.4 PSOC 系统资源.................................................................................................................. 71
3
PSOC 原理及操作教程 - Theory and Operation of PsoC
第一章 概述
1.1 什么是 SOC?
把微处理器、存储器、高密度逻辑电路、模拟和混合电路,以及其他电路集成到一个芯片
上,构成一个具有信号采集、转换、存储和 I/O 处理功能的系统,称为片上系统(SoC-System
on Chip)。SoC 采用超深亚微米加工工艺、IP(intellectual Property)内核复用和软硬件协同设
计技术,是超大规模集成电路的发展趋势。
SOC 又称为系统级芯片,它的设计称为集成系统的设计。集成系统和集成电路的关系相当
于集成电路和分立元件的关系。在设计过程中,设计者面对的不再是电路芯片,而是能实现设
计功能的 IP 核库。设计者不必要在众多的模块电路中搜索所需要的电路芯片,只需要根据设计
功能和固件特性选择相应的 IP 核。这些 IP 核将被集成系统复用。这种设计方法从传统的集成
电路设计转向集成系统设计,从整个系统的角度出发,把处理机制、模型算法、芯片结构、各
层次电路直至器件的设计紧密地结合在一起,在单个芯片上完成整个系统的功能,设计的重心
也从逻辑综合、布局布线转向系统的设计、软硬件的设计以及仿真,它的设计必须是从系统行
为级开始的自上向下的设计方法。采用集成系统的设计方法完成同样功能所需的晶体管的数目
可以降低很多。集成电路设计方法向集成系统设计方法的转变,不仅是一种概念上的突破,同
时也是信息技术发展的必然结果。
从应用的角度划分,SoC 包括专用型、可编程型(PSoC- Programmable System on Chip)和
OEM(Original Equipment Manufacturer 原始设备生产商)型。可编程型基于 IP 内核,通过编
程来选择构成产品,是 SoC 主要形式和重要应用方向,也是下面介绍的重点。
1.2 PSOC 与单片机相比的特点
PsoC 与传统微控制器相比具有如下特点:
1、PSoc 基于 IP 内核,通过编程来选择构成产品,具有无与伦比的灵活性,是 SoC 主要形
式和重要应用方向。例如:某一种型号的单片机具有一个 16 位定时器和一个 8 位的定时器,那
么在用户使用的过程中,只能用这两个定时器;PSoc 则不同,以 Cypress 公司的 CY8C29466
为例,它里面提供了四种分别是 8 位、16 位、24 位和 32 的定时器,用户在使用的过程中可以
根据需要在一定范围内灵活的选择自己需要的定时器,可以使用多个同一种定时器,也可以使
用多种定时器,具有很大的灵活性。
2、数字模块、模拟模块和 MCU 集成在一起。如图1.1 所示 PSoc 不仅包含了一般的单片机
具有的常用的数字模块,它还包含了多种放大器、电压比较器、模数转换、数模转换、滤波器
4
PSOC 原理及操作教程 - Theory and Operation of PsoC
和用来测量自身微控制器温度的 Flash Temp 模块。高度的集成化使得用户的设计快速高效且节
省元器件。
3、强大但简单易用的工具用户模块。用户模块是 PSoC 中预先定义和配置好的数字和模拟
模块,并已对寄存器参数初始化。用户在使用的过程中只需要选择用户模块并对一些必要进行
简单的配置即可。
4、强大而高效的开发工具。Cypress 公司提供的两种开发软件 PSoc Designer 和 PSoc
express 可以使用户的开发周期大大缩短。实践证明,一个以前从来都没学习过单片机的人学
习 PSoc 要比学习其他单片机用的时间短。
1.3 PSOC 发展过程
PSoc 的发展与单片机技术的发展密不可分,实际上就是单片机技术在半导体工业不断发
展,超大规模集成电路工艺水平的不断提高,深亚微米工艺已经走向成
熟,以及 EDA 软件工具不断升级的今天发展的必然产物,它能极大地
满足人们对电子系统的诸如缩小体积、减轻重量、降低功耗、提高可靠
性、提高性能、增强保密性、降低系统成本等等多方面的要求。PSoc
始于 20 世纪 90 年代中期,它的发展主要经历了以下几个阶段:
1.1994 年 Motorola 公司发布了 Flex Core 系统,这个系统是用来制
作基于 68000 和 Power PC 的定制微 CPU。
2.1995 年,LSI Logic 公司采用 SOC 为 SONY 公司进行设计。以上
两者是基于 IP 核完成 SOC 设计的最早报道。
3.1999 年 Atmel 公司开发出首个基于 RISC 的现场可编程系统级集
成电路 FPSLIC-AT40K FPGA。
4.之前推出的 SOC 均是数字逻辑系统。2000 年 Cypress 公司首次推
出了以 CY8C25×××和 CY8C26××× 系列为代表混合信号 SOC。混
合信号 SOC 就是该片上系统既有数字逻辑系统,还有模拟功能,甚至还
应该包括数模混合信号模块块、RF 电路模块等众多功能模块。
5.后来 Cypress 公司又相继推出了 CY8C29×××/27×××/24×
××/22×××/21×××等包含少量混合信号处理电路的 PSoc.
21 世纪集成电路将进入 SoC 时代。SOC 能够将越来越复杂的功能集
成到芯片上,这使得集成电路发展成为集成系统,电子整机的功能将可
以集成到一个芯片中。SOC 将引领新一代嵌入式 CPU 的技术发展,将不
断满足日益增长的功能密度、灵活的网络连接、轻便的移动应用、多媒
体的信息处理等要求。
图 1.1
5
PSOC 原理及操作教程 - Theory and Operation of PsoC
第二章 PSoC 的结构与特点
作为一种新型的、适合时代要求的智能器件,PSoc 具有与普通单片机不同的结构和特点,
本章将从整体上予以介绍。
2.1 PSOC 的总体结构
PSoc 的整体结构如图 2.1 所示,包括 PSoc 内核(PSoc Core)、数字系统(Digital System)、
模拟系统(Analog System)、系统资源(System Resource)四部分组成。这四个主要部分通过
系统总线通信网络联系在一起。
图 2.1 PSoc 的整体结构
6
PSOC 原理及操作教程 - Theory and Operation of PsoC
2.1.1 PSoC 内核
PSoC 内核是一个功能强大的处理器,支持丰富的指令设置。它包含 CPU 内核、用于数据
存储的静态存储器 SRAM、用于控制程序在一个新地址中短暂执行的中断控制器、睡眠和看门
狗定时器和一组包括锁相环、内部主振荡器、内部低速振荡器和外部晶振的时钟源。这些时钟
和系统资源中的可编程时钟分频因子一起使得把几乎所有的定时需求集成到 PSoc 设备中成为
了可能。
CPU 内核,也称为 M8C,是一个工作频率可以达到 24MHz 的强大的处理器。M8C 是一个
4MIPS 的 8 位哈佛结构的微处理器。在 CPU 内核的内部静态包含有 RAM(SRAM)和 FLASH
存储器。最小的 PSoc 设备之间有差别很小的模拟结构。
PSoc 的通用输入输出(GPI/O)把器件的 CPU、数字和模拟资源与外部引脚进行了连接。
每一个引脚有八种不同的驱动模式,不同的驱动模式为外部接口提供了很大的灵活性。每一个
引脚都可以因高电平、低电平或者电平的变化而产生一个系统中断。
2.1.2 数字系统
PSoc 的数字系统由数字 PSoc 模块、行内数字模块互连(RDI)、行间数字阵列互连(ADI)、
全局数字系统互连(GDI)组成。数字模块最多有四行 16 个。数字模块的个数因设备的不同而
不同,具体的各种设备所含的数字模块的数目参见表 2-1。
表 2-1 不同 PSoc 的模块数目表
数字模块可以通过一系列的全局总线连接到任何通用的 I/O 口,全局总线可以把任何信号
发送到任何引脚上。全局总线还允许信号多路技术和进行逻辑操作。这一配置使得你的设计从
7
PSOC 原理及操作教程 - Theory and Operation of PsoC
一个外围设备固定的控制器中解脱出来了。
2.1.3 模拟系统
PSoc 的模拟系统包括全局模拟互连(GAI),基本模拟 PSoc 模块阵列、 模拟信号基准电
压发生器、模拟信号输入多路选择器等几部分组成。模拟系统模块最多包括四个模拟列,12 个
模拟模块,不同的设备具有的模拟模块的数目不同,参见表 2-1。每一个可配置的模块都是由
一个拓扑电路组成,该拓扑电路允许用户创造复杂的模拟信号流。
每一个模拟列包括一个 B 类连续时间模块(ACB)、一个 C 类开关电容模块(ASC)、一个
D 类开关电容模块(ASD)。
2.1.4 系统资源
系统资源提供了额外的可编程片上系统功能,这些功能取决于你的 PSoc 设备的特征。参见
表 2-2。
表 2-2
CY8C 系列器件提供的系统资源包括:数字时钟(SYSCLK×2、SYSCLK、CPUCLK、VC1、
VC2、VC3、SLEEP 等时钟);乘法/加法器(MACs);两种类型(Type1、Type2)的采样抽取器;
主从及多主模式的 I2 C 接口(通信速率:400kbps);用户可设定电压阀值的电源电压检测模块
8