待续。。。。。。。。
3.2.2特殊寄存器
特殊寄存器和数据存储器统一编址,占用存储空间FFE0-FFFD共30个末端单元。表1中描述了寄存器的名称、对应地址、位宽、属性、初值等,表2描述了GPIO和特殊寄存器的对应关系。
表1 特殊寄存器一览表
寄存器名 访问地址 宽度(位) 属性 缺省值 备注
AR FFE0 16 写 0 输出到引脚
DER FFE1 16 读/写 0
DR FFE2 16 读/写 0 输出到引脚
GPBER[0] FFE3 1 读/写 0
GPBER[1] FFE4 1 读/写 0
GPBER[2] FFE5 1 读/写 0
GPBER[3] FFE6 1 读/写 0
GPBER[4] FFE7 1 读/写 0
GPBER[5] FFE8 1 读/写 0
GPBR[0] FFE9 1 写 0 输出到引脚
GPBR[1] FFEA 1 写 0 输出到引脚
GPBR[2] FFEB 1 写 0 输出到引脚
GPBR[3] FFEC 1 写 0 输出到引脚
GPBR[4] FFED 1 写 0 输出到引脚
GPBR[5] FFEE 1 写 0 输出到引脚
GPPER[7:0] FFEF 8 读/写 0
GPPR[7:0] FFF0 8 读/写 0 输出到引脚
ISR[8:0] FFF1 9 读 0
WDER FFF3 3 写 0 输出到引脚
CLKDR FFF4 4 写 0 输出到引脚
BDRR FFF5 16 写 BA
TRXR FFF6 8 读/写 0 串行输出到引脚
CTCAR FFF7 16 读/写 0
CTAHR FFF8 16 读/写 0
CTAMR FFF9 16 读/写 0
CTCBR FFFA 16 读/写 0
CTBHR FFFB 16 读/写 0
CTBMR FFFC 16 读/写 0
ESER FFFE 6 读/写 0 外部事件输入赋能
ESR FFFF 6 读 0 状态寄存器
表2 GPIO[13:0]与控制特殊寄存器对应关系
引脚 寄存器名 访问地址 备注
GPIO[13] GPBER[0] FFE3 GPIO[13]位赋能
GPIO[12] GPBER[1] FFE4 GPIO[12]位赋能
GPIO[11] GPBER[2] FFE5 GPIO[11]位赋能
GPIO[10] GPBER[3] FFE6 GPIO[10]位赋能
GPIO[9] GPBER[4] FFE7 GPIO[9]位赋能
GPIO[8] GPBER[5] FFE8 GPIO[8]位赋能
GPIO[7:0] GPPER[7:0] FFEF GPIO[7:0]位赋能
GPIO[13] GPBR[0] FFE9 GPIO[13]位读/写
GPIO[12] GPBR[1] FFEA GPIO[12]位读/写
GPIO[11] GPBR[2] FFEB GPIO[11]位读/写
GPIO[10] GPBR[3] FFEC GPIO[10]位读/写
GPIO[9] GPBR[4] FFED GPIO[9]位读/写
GPIO[8] GPBR[5] FFEE GPIO[8]位读/写
GPIO[7:0] GPPR[7:0] FFF0 GPIO[7:0]位读/写
3.2.3特殊寄存器说明
AR寄存器
访问外部EEPROM和RAM的地址寄存器。A寄存器的内容映射到芯片引脚。支持对128KB外部EEPROM的访问和64KB外部SRAM或DRAM的访问。
复位后,AR地址从0按1增量访问外部EEPROM而读取程序,直到FFFF。
AR寄存器支持程序写操作,程序加载完成之后,AR寄存器可以作为可编程输出使用。AR寄存器是公共资源,每道程序都可以对其进行写操作,A(15:0)为可写,但不支持读操作,A(17)不支持读操作,也不支持写操作,AR始终保持最后写入的内容,参见图3。
图3 AR寄存器
DR寄存器
访问外部EEPROM和SRAM或DRAM的数据寄存器,16位,可读写。DR寄存器的内容映射到芯片引脚。DR寄存器和AR寄存器以及DER寄存器一起构成外部EEPROM和SRAM或DRAM的访问机制。
程序加载:芯片复位后,核逻辑自动启动加载程序序列,在这个过程中,DR(15:0)的相应引脚为输入状态,其中DR(7:0)为从外部EEPROM读出的有效数据(用户程序),AR(16:0)输出作为外部EEPROM的地址。
读外部EEPROM序列结束后,DR(15:0)的相应引脚仍为输入状态。
块读访问:读外部SRAM或DRAM的时序由核逻辑生成,其控制信号包括W/R和OE_N,见3.9块传送的BLTI时序。
块写访问:写外部SRAM或DRAM的时序由核逻辑生成,见3.9块传送的BLTO时序。
DR寄存器支持程序读写操作,如果用户不需外部数据存储器,那么在DER控制下,DR对应的引脚可以作为GPIO使用;AR[15:0]可作为输出信号。
作为输入时,DR的内容始终跟踪相应引脚的电平而变化,DR的最大工作频率为核时钟的1/8。
作为输出时,DR始终保持程序最后写入的内容。
在芯片复位后,DER为全0,DR为全0,相应输出Pin为三态。参见图4。
DER寄存器
DR的赋能寄存器,可读写。当DER(i)=1时,相应的DR(i)为输出;否则为输入。DER(15:0)分别对应DR(15:0)。在BLTO操作时,核逻辑自动写入DER为全1,使DR全部为输出状态,在BLTO操作完成之后,核逻辑自动恢复DER为全0,使DR为输入状态;在BLTI操作时,核逻辑自动写入DER为全0,使DR全部为输入状态。
在芯片复位后,DER为全0,DR为全0,相应输出Pin为三态。参见图4。
图4 DR&DER
GPBR寄存器
用户自定义输出,可读写,GPBR映射到芯片的引脚。GPBR的每一位在GPBER的控制下可以独立被编程为输出。6位GPBR寄存器映射到芯片引脚GPIO[13:8],见表2。作为输出时,GPBR始终保持最后写入的的内容; 在芯片复位后,GPBER为全0,GPBR为全0,相应输出Pin为三态,参见图5。
GPBER寄存器
GPBR的赋能寄存器,可读写。当GPBER(i)=1时,相应的GPBR(i)为输出;否则为三态。GPBER(5:0)分别对应GPBR(5:0),见表2。
在芯片复位后,GPBER为全0,GPBR为全0,相应输出Pin为三态,参见图5。
图5 GPBR& GPBER
GPPR寄存器
用户可编程I/O,可读写,GPPR的每一位在GPPER的控制下可以被编程。8位GPPR寄存器映射到芯片引脚GPIO[7:0],见表2。
作为输出时,GPPR始终保持最后写入的的内容;作为输入时,GPPR始终跟随外部引脚的变化。
在芯片复位后,GPPER为全0,GPPR为全0,相应输出Pin为三态,参见图6。
GPPER寄存器
GPPR的赋能寄存器,可读写。当GPPER(i)=1时,相应的GPPR(i)为输出;否则为输入。GPPER(7:0)分别对应GPPR(7:0),见表2。
图6 GPPR&GPPER
在芯片复位后,GPPER为全0,GPPR为全0,相应输出Pin为三态,参见图5。
WDR寄存器
Watchdog机制的计数器,16位,不可访问。WDR按核时钟频率计数,溢出时WD输出一个高脉冲,脉冲宽度为512个核时钟周期。计数器值为FFFF时的下一个时钟产生溢出,溢出标志输出到引脚。
WDER寄存器
Watchdog机制控制寄存器,低3位有效,可读写。WDR计数器的最高位输出到片外,可以参与系统复位,WDR计数器的溢出位可以参与核逻辑复位,WDR的输出脉冲宽度为512个核时钟周期。
在WDR溢出参与核逻辑复位的过程中,输出时钟的分频系数和输出频率保持原有状态,不受此复位影响,核逻辑复位后自动加载程序并启动运行。
芯片复位后,WDER为全0。WDER和WDR的关系见表3和图7。
图7 Watch Dog寄存器
表3 WDER和WDR的关系
WDER(2:0) WDR WD(输出)
011 计数 WDR(16),核逻辑不复位
010 0 0
001 计数 0
000 0 0
111 计数 WDR(16),核逻辑复位
110 0 0
101 计数 0
100 0 0
CLKDR寄存器
输出时钟分频参数寄存器,4位,可写。提供2n(n=0,1,2……15)分频选择。分频后的时钟输出到芯片引脚。
CLKCR寄存器
时钟分频计数器,16位,不可访问。时钟输出与分频参数的关系如表4。
表4 时钟输出与分频参数的关系
CLKDR(3:0) CLKO CLKDR(3:0) CLKO
0000 CLKIn/21 1000 CLKIn/29
0001 CLKIn/22 1001 CLKIn/210
0010 CLKIn/23 1010 CLKIn/211
0011 CLKIn/24 1011 CLKIn/212
0100 CLKIn/25 1100 CLKIn/213
0101 CLKIn/26 1101 CLKIn/214
0110 CLKIn/27 1110 CLKIn/215
0111 CLKIn/28 1111 CLKIn/216
TRXR寄存器
TRXR寄存器包含UART输入和输出两个8位寄存器,公用一个地址,将写入的8位数据通过TX引脚串行输出到外部设备UART的RX;串行接收外部设备UART的RX数据,收齐8位后,程序即可读取。
TRXR寄存器提供全双工工作方式,即收发可以同时进行,参见图8。
图8 TRXR寄存器
BDRR寄存器
波特率参数寄存器,16位宽度,可写。用于设置TRXR和外部UART的通讯速率,BDRR寄存器在100MHz的工作频率下的缺省值为支持9600bps的传输速率,用户可以根据芯片工作频率来计算其他相应波特率的参数,波特率参数的算法是:CLKI×M/2T,其中:CLKI是芯片输入时钟,M为芯片内部PLL的倍频系数,T是和外部设备约定的传输速率。关于串口的使用参见3.3串口。
CTCAR寄存器
Counter/TimerA计数/定时器控制寄存器,高8位为控制参数,低8位为Counter/TimerA计数/定时器的高8位,称为CTAHR,可写,具体使用参见3.5定时器。
CTAMR寄存器
Counter/TimerA计数/定时器的中间16位,称为CTAMR,可读写,具体使用参见3.5定时器。
CTALR寄存器
Counter/TimerA计数/定时器的低16位,称为CTBLR,可读写,具体使用参见3.5定时器。
CTCBR寄存器
Counter/TimerB计数/定时器控制寄存器,高8位为控制参数,低8位为Counter/TimerB计数/定时器的高8位,称为CTBHR,可写,具体使用参见3.5定时器。
CTBMR寄存器
Counter/TimerB计数/定时器的中间16位,称为CTBMR,可读写,具体使用参见3.5定时器。
CTBLR寄存器
Counter/TimerB计数/定时器的低16位,称为CTBLR,可读写,具体使用参见3.5定时器。
ISR寄存器
内部状态寄存器ISR,9位,可读。记录芯片内部运行过程中出现的错误或相关状态,内部状态不可屏蔽;ISR寄存器和内部状态的对应关系如图9所示。
图9 ISR寄存器定义
程序地址越界:访问程序存储器地址大于32768;
数据地址越界:访问数据存储器地址大于16384;
PM错误操作:程序驱动器发现非法指令;
MP错误操作:指令控制器发现非法指令
MD错误操作:数据存储控制器非法操作;
AU错误操作:数学运算器非法操作;
BU错误操作:逻辑运算部件非法错作;
PI错误操作:IO控制器非法操作;
BLT长度错:在BLTI或BLTO操作中,发现长度小于0或长度大于16384。
ESR寄存器
外部状态寄存器ESR,8位,可读。记录外部发生(包括两个内部定时器的溢出)事件的状态,外部状态可屏蔽。当ESER(i)为1时,ESR(i)相应外部1状态被锁存,直到读ESR寄存器指令的执行,读ESR指令执行后ESR(7:0)的内容全部被读出,同时置ESR(7:0)被置为全0。外部状态为上升沿触发方式。ESR寄存器和事件的对应关系如图10所示,ESER和E的关系如图11所示。
图10 ESR寄存器定义
图11 ESER和ESR的关系
ESER寄存器
外部事件状态赋能寄存器,8位,可读写。当ESER(i)=1时,相应的ESR(i)被赋能。若ESR(i)=1,那么读ESR寄存器指令执行使ESER(i)清0,ESER寄存器定义见图12。
图12 ESER寄存器定义
3.3串口
LSSP中具有一个串行接口控制器,串行接口控制器具有以下特点:
支持基本8N1串行协议的收发(RXD/TXD);
串口的收发为全双工方式;
可设置串口波特率寄存器,支持最大波特率为57600;
发送异步,发送指令可直接返回但将阻塞下一条发送指令;
接收同步,接收指令只有在接收到数据后才会执行下一条指令;
当接收数据未读完而下一桢数据到来,则丢弃上一帧数据。
待续。。。。。。。。
3.5定时器
3.5.1功能特点
LSSP中具有两组定时/计数器,定时/计数器的主要功能是完成对某个事件源的计数并根据是否产生计数器溢出事件来通知用户程序。在LSSP中,每组定时/计数器的功能完全相同,其特点如下:
支持40位计数器,在100MHz情况下,计数时间最长为10995秒;
支持多种计数源,计数源可以是内部时钟,外部时钟或外部事件;
支持多种计数方式,可以向上或向下计数;
支持一次计数和自动重复装载;
支持计数结束时产生事件。
3.5.2计数源
定时/计数器具有多种计数源,包括以下7种:
内部时钟;
外部时钟;
外部事件;
外部事件为0时,对内部时钟计数;
外部事件为0时,对外部时钟技术;
外部事件为1时,对内部时钟计数;
外部事件为1时,对外部时钟技术。
3.5.3计数模式
在计数模式上有以下4种:
一次计数;
重复计数;
向上计数,从0开始,计数到指定值;
向下计数,从最大值开始,减到0。
3.5.4工作原理
根据命令的功能,确定是否是访问定时/计数器。如果是对定时/计数器的访问则进一步判断是访问控制寄存器还是访问分频参数寄存器。根据控制寄存器的启动/停止位来启动或停止计数器,在启动/停止计数器的同时可以选择是否清除已有计数的值,3个16位寄存器组合成一个定时/计数器,如图12所示,低地址寄存器
待续。。。。。。。。
3.7复位
3.7.1复位
在Rst#为低(大于等于8个核时钟周期)时,LSSP逻辑复位,在Rst#由低变高时,启动读外部EEPROM的序列,直到128KB外部EEPROM的内容被全部读入,芯片交给PM控制。复位操作后各寄存器的状态如表5所示。
表5 Rst#后各寄存器的值
寄存器名 复位后的值 对应引脚的状态
AR 0 0~1FFFF
DER 0
DR 0 三态,低8位为EEPROM的数据
GPBER[0] 0
GPBER[1] 0
GPBER[2] 0
GPBER[3] 0
GPBER[4] 0
GPBER[5] 0
GPBR[0] 0 三态
GPBR[1] 0 三态
GPBR[2] 0 三态
GPBR[3] 0 三态
GPBR[4] 0 三态
GPBR[5] 0 三态
GPPER[5:0] 0
GPPR[5:0] 0 三态
WDER 2
CLKDR 0
BDRR BA
TRXR 0 TX输出0,RX等待输入
CTCAR 0
CTAHR 0
CTAMR 0
CTCBR 0
CTBHR 0
CTBMR 0
LWR 0
EEeR 0
EISR 0
3.8程序加载
在Rst#由低变高时,启动读外部EEPROM的序列,读地址从0到1FFFF,共128KB;读周期为32倍核时钟频率,时序见下图12,其中CLKC为核时钟。
图12 程序加载时序
3.9块传送
为方便数据传送,提高效率,LSSP提供数据的块传输。数据的块传送可以使外部存储器到内部存储器,也可以是内部存储器到外部存储器的块移动。用户可利用指令BLTI和BLTO实现块移动。块传送时序分别如图13、14所示。
图13 BLTO操作时序
图14 BLTI 操作时序
4引脚说明
4.1引脚列表
LSSP共设置100个引脚,其中信号引脚70个,3.3V电源引脚4个,1.8V电源引脚8个,模拟1.8V引脚1个,电源地引脚13个,空脚4个,如表6所示。
表6 引脚及说明
信号名 方向 说明
A[16:0] 输出 外部RAM地址(A[15:0])和外部EEPROM地址(A[16:0]),当用户没有配置外部数据存储器时,A[15:0]可以作为可控输出信号量使用,A[16]为程序不可控。
D[15:0] 双向 外部RAM数据(D[15:0])或外部EEPROM数据(D[7:0]),当用户没有配置外部数据存储器时,D[15:0]可以作为GPIO使用。
GPIO[7:0] 双向 用户可编程IO。
GPIO[13:8] 输出 用户可编程输出,不支持输入操作。
UCK 输入 外部为内部CTA和CTB提供的计数时钟,UCK的最高频率应小于155MHz。
EC[1:0] 输入 可计数外部事件输入,高有效。EC的最小宽度为一个核时钟周期或一个UCK周期,祥见3.5.2。
EV[5:0] 输入 外部事件,高有效。当ESR[i]=1且EV[i]=1时,EV[i]被锁存,EV的最小宽度为一个核时钟周期。
RST_N 输入 芯片复位(低有效)。
CLK_I 输入 芯片时钟输入,频率为2~64MHz,占空比为20~80%。
CLK_S 输入 时钟选择,低时选择PLL的输出作为核时钟;高时选择CLKI作为核时钟。
CLK_O 输出 可编程时钟输出,比CLKI延迟3ns,占空比40~60%,Jp_p≤150ps。
CS_N 输出 外部EEPROM片选,低有效。复位后为低,直到程序加载结束。
OE_N 输出 外部RAM输出赋能,低有效。当启动BLTI操作时为低,直到BLTI操作结束。
WR_N 输出 外部RAM读写赋能,低为写。当启动BLTO操作时为低,直到BLTO操作结束。
TX 输出 UART输出。
RX 输入 UART输入。
DN[3:0] 输入 时钟倍频系数,内部上拉, 缺省时核工作频率为160MHz。
核工作频率=CLKI×(DN+1)/2,建议DN≤14,即150MHz。
WD 输出 Watchdog计数器溢出,高有效,输出宽度为512个核时钟周期,可屏蔽,参见3.2.3。
AVDD PLL电源,1.8V,这个电源必须经过滤波处理,参见4.2AVDD滤波处理。
AGND PLL地,可以和GND连接到一起。
VDDH I/O电源,3.3V。
VSSH I/O地,可以和GND连接到一起。
VDD 核电源,1.8V。
GND 核逻辑地。
NC 厂家测试用,用户不需连接。
4.2 PLL电源滤波处理
为了保证芯片内部PLL的稳定的工作,必须对其使用的电源进行滤波处理,如图15所示,其中各器件尽量靠近LSSP的AVDD引脚。
图15 AVDD滤波处理
待续。。。。。。。。。。。。。。
5.2 DC特性
LSSP的DC特性如表7所示。
表7 DC特性
参数 说明 MIN TYP MAX 单位
VQQ IO电压 3.0 3.3 3.6 V
VDD 核芯电压 1.71 1.8 1.89 V
IQQ IO电流 150 mA
IDD 核电流 500 mA
5.3 AC特性
将在《LSSP使用说明v1.1》中补上。
6 LSSP应用基本配置
LSSP通过IO控制模块连接外部设备,一个基本LSSP的应用至少应包括一个时钟源和一个复位电路以及一片存放用户应用程序的EEPROM(最大128KB的容量、8位字宽)。
一个可选的外部存储器RAM,RAM可以是DRAM、SRAM或DPSRAM。RAM的片选由用户可以利用GPIO控制,也可用外电路控制;如果用DRAM,则DRAM的刷新可以由用户逻辑实现,也可以利用GPIO和BLT机制来实现,LSSP不主动对外部DRAM刷新)。
一个可选的串口连接器,6个可选的外部事件输入和14个GPIO等等,一个实例如图16所示。
图16 LSSP应用基本配置
7 封装
7.1逻辑端口
LSSP提供主时钟输入接口、复位接口、测试接口、UART串行接口、外部事件触发接口、外部计数脉冲输入接口、用户可编程接口、外部EEPROM访问接口和外部SRAM和RAM访问接口等。其端口示意见图15。
图15 LSSP逻辑端口
7.2引脚映射
LSSP引脚映射见图17。
图17 LSSP引脚映射
7.3封装
LSSP采用LQFP100封装,具体尺寸如图18。
图18 LSSP封装