EMIF接口:可实现DSP与不同类型股票程序化交易api接口,存储器的连接。一般EMIF与FPGA相连,从而使FP储器的连接。
外部股票程序化交易api接口,存储器接口,ExternalMemoryInterface,是TMSDSP器件上的一种接口,具体可以分为EMIFA和EMIFB。一般来说,EMIF可实现DSP与不同类型股票程序化交易api接口,存储器的连接。一般EMIF与FPGA相连,从而使FP储器的连接。一般EMIF与FPGA相连,从而使FPGA平台充当一个协同处理器、高速数据处理器或高速数据传输接口。
设计接口提供了一个FPGA块至RAM的无缝连接。在读/写、FIFO或股票程序化交易api接口,存储器模式中,双端口块RAM的一侧被用来实现与DSP的通信。另一侧用于实现与内部FPGA逻辑电路或平台-FPGA嵌入式处理器的通信。
在使用DSP的过程中,需要设计外部股票程序化交易api接口,存储器接口时可以参考TI的TMS320XXDSPExternalMemoryInterface(EMIReferenceGuide。其中XX代表某一种具体的dsp处理器。
外部设备连接接口包括外部股票程序化交易api接口,存储器连接接口、主机接口等。外部股票程序化交易api接口,存储器接口主要用来同并行股票程序化交易api接口,存储器连接,这些股票程序化交易api接口,存储器包括SDRAM、SBSRAM、Flash、SRAM股票程序化交易api接口,存储器等,外部股票程序化交易api接口,存储器接口还可以同外部并行设备进行连接,这些设备包括并行A/D、D/A转换器、具有异步并行接口的专用芯片,并可以通过外部股票程序化交易api接口,存储器接口同FPGA、CPLD等连接;主机接口主要用来为主控CPU和C55x处理器之间提供一条方便、快捷的并行连接接口,这个接口用来对DSP进行控制、程序加载、数据传输等工作。
这里主要是EMIF。
EMIF输入输出信号:
EMIF为3种类型的股票程序化交易api接口,存储器提供了无缝接口:
异步股票程序化交易api接口,存储器,包括ROM,FLASH,异步SRAM2同步突发静态股票程序化交易api接口,存储器3同步动态股票程序化交易api接口,存储器异步股票程序化交易api接口,存储器可以是静态随机股票程序化交易api接口,存储器、只读股票程序化交易api接口,存储器和闪存股票程序化交易api接口,存储器等股票程序化交易api接口,存储器,在实际使用中还可以用异步接口连接并行A/D采样器件、并行显示接口等外围设备,但使用这些非标准设备时需要增加一些外部逻辑来保证设备的正常使用。
在使用外部股票程序化交易api接口,存储器接口时应区分字寻址和字节寻址之间的区别,当TMS320C55x访问数据时,CPU用23位地址访问16位字,该方式下数据空间被分成128页,每页字长64K。CPU访问程序代码时,用24位地址访问8位字节,DMA控制器访问股票程序化交易api接口,存储器时也采用字节寻址方式。
如果多个请求服务同时到达,EMIF会根据每个请求优先级来进行处理。最高为HOLD,最低为刷新。
对EMIF编程时,必须了解外部股票程序化交易api接口,存储器地址如何分配给片使能空间,即CE空间,每个CE空间可以同那些类型的股票程序化交易api接口,存储器连接,以及用那些寄存器位来配置CE空间。
TMS320C55x的外部股票程序化交易api接口,存储器映射在存储空间的分布,相应于EMIF的片选使能信号,例如CE1空间的股票程序化交易api接口,存储器,则必须将其片选引脚连接到EMIF的CE1引脚。当EMIF访问CE1空间时,驱动CE1变低。
数据页字寻址方式地址范围外部股票程序化交易api接口,存储器字节寻址方式地址范围第2页后64K字节3-31028000-1FFFFFCE0空间字节050000-3FFFFF32-63200000-3FFFFFCE1空间4M字节400000-7FFFFF64-95400000-5FFFFFCE2空间4M字节800000-BFFFFF96-127600000-7FFFFF当MP/MC=0CE3空间长度为字节剩余地址空间被片上ROM占用当MP/MC=1CE3空间长度为4M字节C00000-FFFFFF
TMS320C5510外部股票程序化交易api接口,存储器映射中的最高地址单独分配给CE3空间,或由CE3及内部的DSPROM共享。这些地址的分配由CPU状态寄存器ST3_55中的MPNMC位来决定。在DSP复位期间,MPNMC值取决于DSP的NP/MC引脚的信号电平。
可以使用全局控制寄存器EGCR和每个CE空间控制寄存器来配置CE空间。
对于每个CE空间,必须设置控制寄存器1中的以下域:
MTYPE指定股票程序化交易api接口,存储器类型
MEMFREQ决定股票程序化交易api接口,存储器信号的频率
MEMCEN决定CLKMEM引脚是输出股票程序化交易api接口,存储器时钟信号,还是被拉成高电平
一定要对全局控制寄存器写如下控制位。
WPE对所有CE空间,使能或者禁止
NOHOLD对所有CE空间,使能或禁止HOLD请求
外部寄存器接口硬件连接与配置
外部股票程序化交易api接口,存储器接口所支持的异步股票程序化交易api接口,存储器接口、同步突发静态股票程序化交易api接口,存储器接口和同步动态股票程序化交易api接口,存储器接口都支持程序代码访问以及32位宽、16位宽和8位宽数据访问。外部股票程序化交易api接口,存储器的4个片选空间都可以单独进行设置,设置的内容包括股票程序化交易api接口,存储器类型、股票程序化交易api接口,存储器宽度、读写时序参数等内容。本节将分别给出不同接口的硬件连接以及参数的设置。
.异步股票程序化交易api接口,存储器接口
异步股票程序化交易api接口,存储器的类型多种多样,它们既包括静态随机股票程序化交易api接口,存储器、闪存股票程序化交易api接口,存储器、只读股票程序化交易api接口,存储器等,又有先入先出股票程序化交易api接口,存储器、双端口股票程序化交易api接口,存储器等,这些股票程序化交易api接口,存储器有着不同的特点,可以根据需要灵活选用。
外部股票程序化交易api接口,存储器接口所支持的异步股票程序化交易api接口,存储器接口、同步突发静态股票程序化交易api接口,存储器接口和同步动态股票程序化交易api接口,存储器接口都支持程序代码访问以及32位宽、16位宽和8位宽数据访问。外部股票程序化交易api接口,存储器的4个片选空间都可以单独进行设置,设置的内容包括股票程序化交易api接口,存储器类型、股票程序化交易api接口,存储器宽度、读写时序参数等内容。
AM29LV320D是一种大容量的闪存股票程序化交易api接口,存储器,存储容量可以达到2M字/4M字节,数据总线宽度可以是8位或16位,下面给出AM29LV320D与DSP的连接关系示意。
从中可以看到C55x处理器与AM29LV320D的连接用了数据线D7-D0,在这种连接方式下AM29LV320D的DQ15/A-1引脚应当作为地址线A-1来使用,处理器的地址总线A[21:0]接到AM29LV320D的A[20:-1],AM29LV320D的BYTE#信号接地,RESET#接到系统复位信号,写保护/快速编程WP#/ACC引脚接高电平。AM29LV320D的读写时序,如5-5和5-6所示,从时序中可以看到该芯片的一个读写周期最短为90ns或120ns,而数字信号处理器的CLKOUT时钟是DSP主时钟的1/1/1/1/1/1/1/7或1/如果DSP运行在200MHz,则DSP一个时钟周期为5ns,如果不能让DSP的读写时序同AM29LV320D的读写时序相匹配,就无法实现正确的读写。调整DSP的读写时序有两种方法,一种是将AM29LV320D的RY/BY信号接到DSP的ARDY信号上,通过硬件等待信号实现二者读写时序的同步,另外一种方法是通过软件设置外部股票程序化交易api接口,存储器接口寄存器实现正确读写。方法1使用简单,但灵活性不强,如果DSP通过外部股票程序化交易api接口,存储器接口连接多个芯片,这种方法就不能使用,软件设置的方法灵活、方便,推荐使用该种方法设置外部股票程序化交易api接口,存储器接口的读写时序。当CLKOUT为4分频时,设置建立时间为1个时钟周期,选通时间为4个时钟周期,保持时间为2个时钟周期就可以正确读取AM29LV320D股票程序化交易api接口,存储器。
外部股票程序化交易api接口,存储器接口为每个片选空间都提供了独立的片选控制寄存器,通过这些寄存器可以设置寄存器类型,读/写时序以及超时时钟周期数,具体可参见下表。片选控制寄存器1位字段数值说明15~13Reserved保留14~12MTYPE000b001b010b011b100b101b~111b股票程序化交易api接口,存储器类型8位宽异步股票程序化交易api接口,存储器16位宽异步股票程序化交易api接口,存储器32位宽异步股票程序化交易api接口,存储器32位宽同步动态股票程序化交易api接口,存储器(SDRA32位宽同步静态突发股票程序化交易api接口,存储器(SBSRA保留11~8READSETUP1~15读建立时间7~2READSTROBE1~63读选通时间1~0READHOLD0~3读保持时间片选控制寄存器2位字段数值说明15~14EXTENEDHOLDREAD0~3读延长保持时间13~12EXTENEDHOLDWRITE0~3写延长保持时间11~8WRITESETUP1~15写建立时间7~2WRITESTROBE1~63写选通时间1~0WRITEHOLD0~3写保持时间片选控制寄存器3位字段数值说明15~8Reserved保留7~0TIMEOUT01≤N≤255超时字段超时功能被禁止当ARDY信号为低超过N个时钟周期,则发生超时错误使用异步股票程序化交易api接口,存储器要注意的问题是:1外部股票程序化交易api接口,存储器连接信号2EMIF对异步股票程序化交易api接口,存储器的配置3EMIF异步读操作4EMIF异步写操作5随就绪信号插入的额外周期2.同步突发静态股票程序化交易api接口,存储器(SBSRA同步突发静态股票程序化交易api接口,存储器是一种高密度、高速的股票程序化交易api接口,存储器,同同步动态股票程序化交易api接口,存储器相比,同步静态股票程序化交易api接口,存储器不需要刷新,访问更加方便、快捷。TMS320C55x外部股票程序化交易api接口,存储器接口支持32位宽无校验同步突发管道型静态股票程序化交易api接口,存储器,同步突发静态股票程序化交易api接口,存储器的工作频率在与CPU时钟同频或CPU时钟频率的1/SBSRAM有流水和流通两种类型,但EMIF只支持流水型,在相同吞吐量的情况下,可以工作在更高的频率。同步突发静态股票程序化交易api接口,存储器所使用的信号包括数据总线D[0..31]、地址总线A[0]、片选信号CE0-CE字节使能信号BE0-BE此外还有SBSRAM地址选通信号SSADS、输出使能信号SSOE、写使能信号SSWE和股票程序化交易api接口,存储器接口时钟CLKMEM。接下来给出C55x外部股票程序化交易api接口,存储器接口同32位无校验管道型SBSRAM的连接。中SBSRAM占用CE0空间,SBSRAM的MODE信号接到低电平使SBSRAM工作在线性突发模式,其他未用的SBSRAM信号如ZZ、ADV、ADSP和GW信号都接成非活动状态。
如果所用的SBSRAM是有校验型股票程序化交易api接口,存储器,连接时则应注意SBSRAM的校验信号DQP[d:a]应当接地以减少功率消耗。
如果要使用SBSRAM的电源关闭模式,可以将SBSRAM的ZZ引脚同C55x的通用输入输出引脚相连接,通过通用输入输出引脚控制SBSRAM是否进入电源关闭模式。
控制SBSRAM接口的寄存器包括EMIF全局控制寄存器和片选控制寄存器CEx_接下来给出SBSRAM所需设置字段表。
SBSRAM需要设置字段
所在寄存器位字段名称数值说明片选控制寄存器14~12MTYPE100b32位宽SBSRAM全局控制寄存器11~9MEMFREQ000b001bCLKMEM频率CLKOUT频率CLKOUT频率除2全局控制寄存器7WPE01后写使能禁止后写后写使能全局控制寄存器5MEMCEN01股票程序化交易api接口,存储器时钟使能CLKMEM保持高电平CLKMEM输出使能全局控制寄存器0NOHOLD01外部保持控制允许外部保持禁止外部保持
.同步突发动态股票程序化交易api接口,存储器(SDRA
TMS320C55x外部股票程序化交易api接口,存储器接口支持16位、32位宽,64M位和128M位SDRAM,SDRAM可以工作在C55x频率的1/2或1/
SDRAM的引脚映射和寄存器配置表
SDRAM容量及排列方式使用芯片数量配置位占用CE空间数边界/行地址列地址SDACCSDSIZESDWIDSDRAMEMIFSDRAMEMIF64M位4Mx16位10002BA[1:0]和[11:0]A[14:12]、SDA10和A[10:1]A[7:0]A[8:1]64M位4Mx16位21004BA[1:0]和[11:0]A[15:13]、SDA10和A[11:2]A[7:0]A[9:2]64M位2Mx32位11012BA[1:0和[10:0]A[14:13]、SDA10和A[11:2]A[7:0]A[9:2]64M位2Mx32位21014BA[1:0和[10:0]A[14:13]、SDA10和A[11:2]A[7:0]A[9:2]128M位8Mx16位10104BA[1:0]和[11:0]A[14:12]、SDA10和A[10:1]A[8:0]A[9:1]128M位4Mx32位11114BA[1:0]和[11:0]A[15:13]、SDA10和A[11:2]A[7:0]A[9:2]
SDRAM接口专用信号包括SDRAM行选通信号SDRAS、列选通信号SDCAS和写使能信号SDWE,SDA10信号在ACTV命令时作为行地址信号,
在读写操作时作为预加电使能信号,在DCAB命令下为高,保持模式下为高阻态。
SDRAM操作时需要一系列命令来支持其运行,下面给出命令列表。
C55xEMIF接口SDRAM命令
命令说明DCAB关闭所有边界ACTV打开所选择边界和所选择行READ输入起始列地址开始读操作WRT输入起始列地址开始写操作MRS配置SDRAM模式寄存器REFR自动循环刷新地址NOP不进行操作
在进行SDRAM操作时需要修改EMIF全局控制寄存器和片选控制寄存器接下来给出SDRAM所需设置字段表。
所在寄存器位字段名称数值说明全局控制寄存器11~9MEMFREQ000b001bCLKMEM频率CLKOUT频率CLKOUT频率除2全局控制寄存器7WPE01后写使能禁止后写后写使能全局控制寄存器5MEMCEN01股票程序化交易api接口,存储器时钟使能CLKMEM保持高电平CLKMEM输出使能全局控制寄存器0NOHOLD01外部保持控制允许外部保持禁止外部保持片选控制寄存器114~12MTYPE011b32位宽或16位宽SDRAM
除了设置以上寄存器以外还需要设置SDRAM控制寄存器。
SDRAM控制寄存器1
位字段初始值说明15~11TRC1111b从刷新命令REFR到REFR/MRS/ACTV命令间隔CLKMEM周期数10SDSIZE0SDRAM宽度0:16位宽32位宽9SDWID0SDRAM容量0:64M位128M位8RFEN1刷新使能0:禁止刷新允许刷新7~4TRCD0100从ACTV命令到READ/WRITE命令CLKMEM周期数3~0TRP100从DCAB命令到REFR/ACTV/MRS命令CLKMEM周期数
SDRAM控制寄存器2
位字段初始值说明10SDACC00:SDRAM数据总线接口为16位宽1:SDRAM数据总线接口为32位宽9~8TMRD11bACTV/DCAB/REFR延迟CLKMEM周期数7~4TRAS1111bSDRAS信号有效时持续CLKMEM周期数3~0TACTV2ACTV1111bSDRAS到SDRAS有效延迟CLKMEM周期数
SDRAM周期寄存器和计数寄存器用来设置SDRAM的刷新周期,其中周期寄存器存放刷新所需CLKMEM时钟周期数,计数寄存器存放刷新计数器当前计数值。
外部寄存器接口的软件设置
应用芯片支持库函数对外部寄存器接口进行设置首先要在头文件中包含csl_emih,接下来声明EMIF配置结构:
0x0281,/*EMIF全局控制寄存器*/
/*CLKMEM=OFF*/
0xFFFF,/*EMIF初始化寄存器*/
0x100c,/*ce01*/
/*MTYPE=001B16位异步股票程序化交易api接口,存储器
READSTART=0000b读建立周期为0
READSTROBE=000011b读选通周期为3
READHOLD=01b读保持周期为1
*/
0x0FFF,/*ce02*/
WRITESETUP=1111b写建立周期为=15
WRITESTROBE=111111b写选通周期为=63
WRITEHOLD=11b写保持周期为=3
*/
0x00FF,/*ce03*/
0x013E,/*ce11*/
/*MTYPE=000B8位异步股票程序化交易api接口,存储器
READSTART=0001b读建立周期为1
READSTROBE=001111b读选通周期为15
READHOLD=10b读保持周期为2
*/
0x0FFF,/*ce12*/
WRITESETUP=1111b写建立周期为15
WRITESTROBE=111111b写选通周期为63
WRITEHOLD=11b写保持周期为3
*/
0x00FF,/*ce13*/
0x1105,/*ce21*/
/*MTYPE=001B16位异步股票程序化交易api接口,存储器
READSTART=0001b读建立周期为1
READSTROBE=000001b读选通周期为1
READHOLD=01b读保持周期为1
*/
0x0105,/*ce22*/
WRITESETUP=0001b写建立周期为1
WRITESTROBE=000001b写选通周期为1WRITEHOLD=01b写保持周期为30x00FF,/*ce23*/0x110D,/*ce31*//*MTYPE=001B16位异步股票程序化交易api接口,存储器READSTART=0001b读建立周期为1READSTROBE=000011b读选通周期为3READHOLD=01b读保持周期为1*/0x010D,/*ce32*//*READEXTHOLD=00bWRITEEXTHOLD=00bWRITESETUP=0001b写建立周期为1WRITESTROBE=000011b写选通周期为3WRITEHOLD=01b写保持周期为1*/0x00FF,/*ce33*/0x07FF,/*sdc1*/0x0FFF,/*sdper*/0x07FF,/*init*/0x03FF/*sdc2*//*没有SDRAM*/};接下来调用EMIF配置函数完成配置过程:EMIF_config(&Config_EMI;
文章为作者独立观点,不代表股票交易接口观点