欢迎访问ic37.com |
会员登录 免费注册
发布采购

CY7C64013-SC 参数 Datasheet PDF下载

CY7C64013-SC图片预览
型号: CY7C64013-SC
PDF下载: 下载PDF文件 查看货源
内容描述: 全速USB ( 12 Mbps)的功能 [Full-Speed USB (12 Mbps) Function]
分类和应用:
文件页数/大小: 48 页 / 400 K
品牌: CYPRESS [ CYPRESS ]
 浏览型号CY7C64013-SC的Datasheet PDF文件第10页浏览型号CY7C64013-SC的Datasheet PDF文件第11页浏览型号CY7C64013-SC的Datasheet PDF文件第12页浏览型号CY7C64013-SC的Datasheet PDF文件第13页浏览型号CY7C64013-SC的Datasheet PDF文件第15页浏览型号CY7C64013-SC的Datasheet PDF文件第16页浏览型号CY7C64013-SC的Datasheet PDF文件第17页浏览型号CY7C64013-SC的Datasheet PDF文件第18页  
CY7C64013  
CY7C64113  
5.4  
8-Bit Program Stack Pointer (PSP)  
During a reset, the program stack pointer (PSP) is set to 0x00 and growsupward from this address. The PSP may be set by  
firmware, using the MOV PSP,A instruction. The PSP supports interrupt service under hardware control and CALL, RET, and  
RETI instructions under firmware control. The PSP is not readable by the firmware.  
During an interrupt acknowledge, interrupts are disabled and the 14-bit program counter, carry flag, and zero flag are written as  
two bytes of data memory. The first byte is stored in the memory addressed by the PSP, then the PSP is incremented. The second  
byte is stored in memory addressed by the PSP, and the PSP is incremented again. The overall effect is to store the program  
counter and flags on the program stackand increment the PSP by two.  
The Return from Interrupt (RETI) instruction decrements the PSP, then restores the second byte from memory addressed by the  
PSP. The PSP is decremented again and the first byte is restored from memory addressed by the PSP. After the program counter  
and flags have been restored from stack, the interrupts are enabled. The overall effect is to restore the program counter and flags  
from the program stack, decrement the PSP by two, and re-enable interrupts.  
The Call Subroutine (CALL) instruction stores the program counter and flags on the program stack and increments the PSP by  
two.  
The Return from Subroutine (RET) instruction restores the program counter but not the flags from the program stack and decre-  
ments the PSP by two.  
5.4.1  
Data Memory Organization  
The CY7C64x13 microcontrollers provide 256 bytes of data RAM. Normally, the SRAM is partitioned into four areas: program  
stack, user variables, data stack, and USB endpoint FIFOs. The following is one example of where the program stack, data stack,  
and user variables areas could be located.  
After reset  
8-bit DSP 8-bit PSP  
Address  
0x00  
Program Stack Growth  
Data Stack Growth  
(Move DSP[1]  
)
user selected  
8-bit DSP  
User variables  
USB FIFO space for five endpoints[2]  
0xFF  
5.5  
8-Bit Data Stack Pointer (DSP)  
The data stack pointer (DSP) supports PUSH and POP instructions that use the data stack for temporary storage. A PUSH  
instruction pre-decrements the DSP, then writes data to the memory location addressed by the DSP. A POP instruction reads  
data from the memory location addressed by the DSP, then post-increments the DSP.  
During a reset, the DSP is reset to 0x00. A PUSH instruction when DSP equals 0x00 writes data at the top of the data RAM  
(address 0xFF). This writes data to the memory area reserved for USB endpoint FIFOs. Therefore, the DSP should be indexed  
at an appropriate memory location that does not compromise the Program Stack, user-defined memory (variables), or the USB  
endpoint FIFOs.  
For USB applications, the firmware should set the DSP to an appropriate location to avoid a memory conflict with RAM dedicated  
to USB FIFOs. The memory requirements for the USB endpoints are described in Section 18.2. Example assembly instructions  
to do this with two device addresses (FIFOs begin at 0xD8) are shown below:  
MOV A,20h  
; Move 20 hex into Accumulator (must be D8h or less)  
SWAP A,DSP ; swap accumulator value into DSP register  
Notes:  
1. Refer to Section 5.5 for a description of DSP.  
2. Endpoint sizes are fixed by the Endpoint Size Bit (I/O register 0x1F, Bit 7), see Table 18-1.  
Document #: 38-08001 Rev. **  
Page 14 of 48