• 易迪拓培训,专注于微波、射频、天线设计工程师的培养
首页 > 无线通信 > 技术文章 > NIOS II的SOPC中存储器型外设接口的设计

NIOS II的SOPC中存储器型外设接口的设计

录入:edatop.com     点击:

在构建SOPC系统时,Nios II处理器需要选中Include tightly coupled instruction master pods以及Include tightly coupled data master pods,这样就可以添加处理器的紧耦合指令/数据主端口。片上存储器可选择SOPC Builder提供的onchip_memory,并在紧耦合指令存储器中设置其为双端口。当系统中的元件添加完成后,SOPC Builder会自动连接紧耦合指令/数据存储器的从端口和其他主端口,但是,这时候需要手动修改连接关系。tightly_coupled_instruction_memory的s1端口仅与处理器的紧耦合指令主端口相连接,而s2端口则可以作为一个Avalon从端口仅与处理器的Avalon数据主端口相连接,而tightly_coupled_data_memory的sl端口仅连接到处理器的紧耦合数据主端口。Nios II处理器中紧耦合存储器的配置如图2所示。

紧耦合数据存储器中的数据可以通过设定数据单元大小后在.hex文件中进行初始化。SOPCBuilder编译成功后,可在Nios II IDE下编写测试代码,以便将初始化文件中的数据通过指向地址的指针读出。以下是部分测试代码:

3 FIFO接口的设计

Altera公司已将FIFO内嵌到FPGA中,用户可以根据不同的设计需求来使用。FIFO的基本单元是寄存器,作为存储器件,它的存储能力可由内部定义的存储寄存器的数量决定,一般以数据量的深度X为宽度形式来说明所采用的基本结构,它通常是双端口的存储器,其中一个端口用于写入数据,另一个端口用于读出数据。使用时可以同时对存储器的存储单元进行写入和读出操作,而且FIFO型的存储器不需要由地址来存取数据。它通常需要由另外的信号线(或标志)来标明存储器的状态。

SOPC Builder中没有相应的FIFO接口控制器,因此需要自己定义FIFO接口。可首先在Quartus II的界面中新建一个.bdf文件,在下拉菜单中选择MegaWizard Plug-InManager,在打开的选项中从altera提供的库中找到FIFO,并根据需要选择FIFO的深度及宽度,设定好参数后再添加在.bdf中。然后在Ouartus II工程中打开SOPC Builder,并在Create New Comlaonet打开创建元件向导,同时在Signals选项卡中添加端口信号。由于需要将紧耦合存储器中的数据写到FIFO中,因此,FIFO的接口信号有写使能addr和32位写数据接口writedata等,且时钟和处理器的时钟信号相同。FIFO作为外设存储器设备,其地址对齐方式一般选择动态地址对齐。通过实验验证FIFO的时序符合要求后,即可将紧耦合数据存储器中的数据写到FIFO。图3所示是将紧耦合数据存储器中的数据写人FIFO的时序验证。

4 SRAM的接口设计

本设计中的SRAM采用的是ISSI公司的IS61LV25616AL-10TL型16位高速异步SRAM,它属于存储器型外设,因此,地址对齐方式选择动态地址对齐。SRAM可通过Avalon三态从端口与Avalon交换架构相连接。图4所示是SRAM在系统中的位置示意图。

Avalon的三态特性允许基于Avalon的系统直接与片外设备相连接,例如存储器芯片或一个外部处理器。Avalon三态从端口允许Avalon SwitchFabric与PCB板上共享的地址和数据总线的片外设备进行接口,可用于将Avalon Switch Fabric与同步和异步存储器芯片的连接。三态从端口通常使用双向信号data,而不是独立的、单向信号readdata和writedata。Data信号是三态的,因而允许多个三态外设与数据总线相连而不引起信号冲突。Avalon三态从端口经常使用负逻辑信号,符合典型的存储器芯片的约定。Avalon三态从端口信号需要注意的是地址信号。Avalon三态从端口地址信号一般代表一个字节地址,这与使用字地址的非三态从端口不同。Avalon三态从端口的地址信号可被多个片外设备共享,这些设备可能有不同的数据宽度。若Avalon三态从端口的数据宽度比一个字节大,则必须将地址信号从AvalonSwitch Fabric正确映射到从设备的地址线。

Avalon Switch Fabric信号直接与具有Avalon三态从端口的片外异步存储器相连一般不需要时钟信号,而在chipsclest、read或write信号上的脉冲则使用建立和保持时间与传输同步。

PCB板中有片选、读写使能、高低字节使能、数据线、地址线,因此,在SOPC Builder中的Create New Componet中设置SRAM的信号线包括数据线sram_data、地址线sram_addr、片选sram_ce、读写使能sram_oe、we以及字节使能信号sram_be。通过阅读IS61LV25616AL-10TL型高速异步静态RAM手册可知,其建立时间、保持时间都为40ns,读等待和写等待为160ns,这使其既可符合Avalon总线时序的要求,又符合IS61LN25616AL-10TL型SRAM的时序要求。图5所示为SRAM的三态从接口配置图,图6是将紧耦合数据存储器的数据写入SRAM的时序波形。

5 结束语

本文通过将片上和片外存储器接入SOPC系统,介绍了存储器型外设接口的定制方法。同时说明了将紧耦合存储器添加至系统,以及将数据通过处理器由存储器读写到存储器的设计方法,并在cyclone EP1C120240C8的FPGA上进行了结果验证,因此,用户可根据实际需要采用此方法将外设接入Avalon总线,并构建SOPC系统。

作者:吕游,陈文艺 西安邮电学院信息与控制系 来源:21IC电子网

上一篇:新的变步长LMS算法及DSP设计
下一篇:散列DMA设计的高速串口驱动技术

手机天线设计培训教程详情>>

手机天线设计培训教程 国内最全面、系统、专业的手机天线设计培训课程,没有之一;是您学习手机天线设计的最佳选择...【More..

射频和天线工程师培训课程详情>>

  网站地图