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

发布者:dfdiqc最新更新时间:2011-11-02 关键字:SOPC  存储器型  外设接口 手机看文章 扫描二维码
随时随地手机看文章
0  引言

  随着微电子设计技术与工艺的发展,数字集成电路由最初的电子管、晶体管逐步发展成专用集成电路(ASIC,Application Specific IntegratedCircuit),同时可编程逻辑器件也取得了长足进步。

  如今,可完成超大规模的复杂组合逻辑与时序逻辑的FPGA器件不断推陈出新,从而为实现片上可编程系统(SOPC)提供了强大的硬件支持。SOPC是Ahera公司提出的一种灵活、高效的片上系统(SOC)解决方案,它将处理器、存储器、I/O口等系统设计所需要的功能模块集成到一个可编程器件上,从而构成一个可编程的片上系统。

  同时,Altera公司也提供了完整的开发套件(QuaItus II、SOPC Builder、Nios II IDE)和仿真工具等软件,并将其无缝地集成在一起。

  利用Quartus II的SOPC Builder能够方便的构建一个基于FPGA的SOPC系统,SOPC Builder的系统库中包含了一些常用的Nios II外围设备,可以自动生成Avalon总线,以用于连接各个模块,从而形成SOPC系统。但系统库中没有提供的器件,而需要用户根据器件的具体情况设计Avalon接口。另外,对于一些没有逻辑功能的接口可以直接与总线相连,但需要根据Avalon总线规范和外设的控制时序来定制接口。

  在实际工程中,通常可以使用的存储器有片上存储器和片外存储器,其中前者指的是FPGA内嵌的存储器,如片上RAM、FIFO、紧耦合存储器等;后者为FPGA片外存储器,如SRAM、SDRAM等。本文介绍了将片内存储器FIFO、紧耦合存储器及16位的SRAM集成在SOPC系统中,并在FPGA开发板上实现的方法,其内容包括外设的接入方法,以及紧耦合存储器如何通过紧耦合从端口直接与处理器的紧耦合数据/指令主端口相连等。

  1  SOPC中的Avalon总线

  Avalon交换式总线是由altera公司开发的一种专用的内部连线技术。Avalon交换式总线由SOPCBuilder自动生成,是一种理想的、用于系统处理器和外设之间的内部连线。SOPC Builder可利用最少的FPGA资源,产生最佳的Avalon交换结构。在SOPC Builder中,每当一个新的组件被添加到系统中或是某个外设接人优先权被改变时,就会有一个新的、最佳的Avalon交换式总线被生成。Avalon交换式总线的整个生成过程都由SOPCBuilder自动完成。SOPC Builder自动生成的Avalon交换式总线可使用最少的逻辑资源来支持数据总线的服用、地址译码、等待周期的产生、外设的地址对齐(包括支持静态和动态地址对齐)、中断优先级的指定以及高级的交换式总线传输。Avalon交换式总线所定义的内联线策略使得任何一个Avalon总线上的主外设都可以与任何一个从外设进行通信。

  Avalon总线结构构成的基本原则是:所有外设的接口与Avalon总线的时钟同步,并与Avalon总线的握手/应答信号一致;同时所有信号均为高电平或低电平,并由多路选择器完成选择功能,它没有三态信号,地址、数据和控制信号使用分离的专用端口,外设无需识别总线地址周期和数据总线周期。

  1.1 Avalon从端口

  Avalon接口定义了一组信号类型(如片选、读使能、写使能、地址、数据等),可用于描述主/从外设上基于地址的读/写接口。Avalon端口就是一组Avalon信号,这些信号用作一个单一的接口。Avalon端口分为主端口和从端口。主端口为发起传输的Avalon信号类型的集合。从端口为响应传输请求的Avalon信号类型的集合。从端口的基本信号有address、readdata、writedata、read、write、chipselect等。从端口的读传输可使用等待周期、建立时间等传输属性,但Avalon从端口读传输不使用保持时间属性。对于有些外设,在read信号有效之前,其address和chipselect信号需要一定周期才能达到稳定,因此具有建立时间的Avalon传输应满足上述建立时间要求。具有建立时间的读传输使用的信号与基本读传输的信号相同,不同之处只在于信号的时序。从端口的写传输除了具有与读传输同样的传输属性外,还具有保持时间,其建立保持时间通常用于需要addtess、byteenable、writedata和chipselect信号在write脉冲之前和/或之后的几个周期内保持稳定的片外外设。

  1.2 地址对齐方式

  当系统中存在数据宽度不匹配的主-从端口对时,需要考虑地址对齐问题。若系统中所有主端口和从端口都具有同样的数据宽度,则从端口数据的所有单元与主端口地址空间的静态地址边界对齐。对于存储器外设,一般应使用动态地址对齐。若Avalon从端口是一个对寄存器文件的接口,则应使用静态地址对齐。寄存器文件提供有对内部外设逻辑的访问功能。

  一般情况下,动态地址对齐方式可以自动适应和Avalon master端口宽度不同的器件,而同时保持地址增长的方式是以字节为单位增长的方式。匹配不同端口宽度的mater和slave时,可使用动态地址对齐方式来得到一个连续的存储器空间。而采用动态地址对齐方式需要连接字节使能信号。

  静态地址对齐的地址增长单位是Avalon master的端口宽度,每次读写都只对应一次操作,但在匹配不同端口宽度的mater和slave时,地址不能自动调整。某些地址可能没有相应的物理实体和它对应。

  2 Nios II系统中的紧耦合存储器

  Nios II系统中的紧耦合存储器是旁路缓存的片上存储器,该存储器具有最好的存储器访问性能,能采用与其它存储器一样的方法为之分配代码和数据。图1是包括紧耦合存储器和其他外设的Nios II系统图。


  SOPC Builder中的片上存储器是唯一能够与Nios II内核上的紧耦合主端口相连接的存储器,而且,该片上存储器必须配置为RAM,同时处理器上的紧耦合主端口也必须只与一个片上存储器从端口相连接。每个紧耦合主端口都可以通过紧耦合接口与紧耦合从端口进行连接,因此,需要双端口存储器与紧耦合指令主端口进行连接。由于紧耦合指令主端口只能访问可执行代码,因此,双端口存储器的第二个存储器端口应当与处理器的数据端口相连,这样便于对数据的读/写操作。

  在构建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系统。(作者:吕游,陈文艺 西安邮电学院信息与控制系 )

关键字:SOPC  存储器型  外设接口 引用地址:NIOS II的SOPC中存储器型外设接口的设计

上一篇:DSP核信号采集系统通讯接口原理及设计
下一篇:基于FPGA的双口RAM与PCI9O52接口设计

推荐阅读最新更新时间:2024-05-02 21:41

新IP模块用于行业标准接口、微控制器及外设
  高性能、高能效硅解决方案供应商安森美半导体(ON Semiconductor)扩充知识产权(IP)阵容,添增超过30项经过硅验证的IP模块。客户采用基于安森美半导体数字和混合信号工艺技术开发专用集成电路(ASIC)和系统级芯片(SoC)如今将可获得更多的IP,用于行业标准接口、微控制器及外设。    这些新IP适合于运营在不同行业及应用领域的客户,包括军事及航空、网络及无线通信、消费电子、汽车和工业自动化。添增到安森美半导体IP阵容的30多项经过硅验证的IP模块,是各种行业标准高速接口用的解决方案,包括USB 2.0、以太网、PCMCIA和PCI等;还有多种微控制器和外设用IP。   新的可综合IP不涉及工艺,所以这些
[单片机]
增强51系列单片机W77E58的存储器访问
    增强型51系列单片机W77E58可与标准的8052兼容,它内含4个8位I/O口、3个16位计数器和全双工串行通信接口。由于W77E58对处理器内核进行了重新设计,因而其性能较之于标准的8052有了很大提高。     W77E58改进了传统处理器的时序。机器周期与时钟之比可以由软件来控制,最快时一个机器周期仅需4个时钟,最慢时一个机器周期需1024个时钟。在同样的时钟频率下,当时钟/机器周期等于4时,W77E58的指令速度比传统的51单片机提高了1.5~3倍(平均2.5倍)。如果以时钟/机器周期等于4 为正常工作方式,那么时钟/机器周期等于1024就可以认为是经济模式了。W77E58为全静态CMOS设计,其工作时钟最
[单片机]
增强<font color='red'>型</font>51系列单片机W77E58的<font color='red'>存储器</font>访问
基于SOPC技术的事故现场处理平台设计与实现
摘 要:本文介绍了利用 SOPC 设计方法,以Altera公司的Nios软核处理器为核心完成的事故现场处理平台的设计。就其中最重要的两部分——SCCB总线控制模块和SRAM读写控制模块的具体实现做了详细介绍,并给出了SRAM写控制器的实际仿真结果。最后,总结了SOPC的设计方法。 关键词:SOPC;事故现场处理平台;IP核;SCCB总线 引言 当前移动警务的广泛应用,使得交警在事故现场就能够对肇事司机和车辆进行现场处理。但是,大部分的应用只是停留在车牌号码等非常简单的文本数据的传输上,如果能够将移动警务的内容拓展到图像数据,将事故现场的图像等信息实时地传给控制中心,就可以更加迅速和精确地对事故进行现场处理。SOPC(Sy
[嵌入式]
SOPC在干扰系统嵌入式网关设计中的应用
1 分布式干扰系统对嵌入式网关设计的要求   根据分布式干扰系统的作战运用背景,在设计嵌入式网关硬件平台时应从以下几个方面考虑:   (1)微型化。嵌入式网关应该在体积上足够小,保证分布式干扰系统的小型化。   (2)扩展性和灵活性。分布式干扰系统需要定义统一、完整的外部接口,方便软硬件系统的升级,其嵌入式网关也应具有扩展性和灵活性,可以根据作战环境的需要进行升级。   (3)稳定性和安全性。稳定性要求嵌入式网关能够在给定的外部环境变化范围内正常工作。安全性设计包括代码安全和通信安全,是军事领域应用的基本要求。   (4)低成本。分布式干扰系统的作战应用表明,系统是大量部署且不能回收的,因此就要严格限制包括嵌
[工业控制]
<font color='red'>SOPC</font>在干扰系统嵌入式网关设计中的应用
基于SOPC的DDS信号发生器设计
摘 要:直接数字频率合成技术是一种新型的信号产生方法,是现代信号源的发展方向。该系统由FPGA 控制模块、键盘、LED 显示组成,结合DDS 的结构和原理,采用SOPC 和DDS 技术,设计出具有频率设置功能的多波形信号发生器。以Altera 公司的CycloneⅡ的核心器件EP2C35 为例,NIOS ⅡCPU 通过读取按键的值,实现任意步进、不同波形的输出显示功能。 0 引 言 直接数字频率合成( Dir ect Dig ital Frequency Synthesis,DDS) 是一种新型的频率合成技术,它把信号发生器的频率稳定度、准确度提高到与基准频率相同的水平,并且可以在很宽的频率范围内进行精细的频率调节。在
[嵌入式]
基于<font color='red'>SOPC</font>的DDS信号发生器设计
基于SOPC技术的PET瓶缺陷检测系统设计
   0引言   随着生活水平的提高,饮料的市场需求量也不断增加,产品的质量已成为生产厂商和消费者关注的问题。目前,市场上几乎所有的饮料瓶都是采用PET(环保塑胶)切片来注塑加工成型的。在进行灌装的工序时,高速旋盖子系统中PET瓶会出现盖拧松、高盖和歪盖等情况;这些情况中轻微的会导致产品外观不美观,严重的会导致饮料内部质量发生变化。所以为了减少不合格品的数量,需要增加必要的检测工序。   传统的方法是在计算机中利用软件实现图像处理系统,这是一个相对耗时的过程,而且对于处理速度要求很高的检测系统来说,用这种方法也会逐渐不能满足现代化大生产的高速生产节拍要求,给视觉检测实现100%在线检测方面带来了局限性。FPGA器件的可编程片上
[测试测量]
基于<font color='red'>SOPC</font>技术的PET瓶缺陷检测系统设计
ADμC812的串行外设接口(SPI)及其应用
摘要:ADμC812是一种新型的集成12位数据采集系统。它的串行外设接口SPI(serial peripheral interface)可进行主机和多片从外围器件的信息传递,即主机对从机的控制及从机向主机提供各种信息等,从而实现系统之间的各种控制和操作。 关键词:ADμC812 串行通信 SPI串行端口 概述 ADμC812是一种全集成的12位数据采集系统。它在单个芯片内包含了高性能的自校准多通道ADC、2个12位DAC以及可编程的8位MCU(与8051兼容)。为便于MCU与各种外围设备进行通信,ADμC812提供了3种串行I/O端口:UART接口、I2C兼容的串行接口和串行外设接口(SPI)。其中,SPI接口是工业标准的同
[嵌入式]
SOPC中NiosII的LCD显示驱动IP设计
引言 NioslI嵌入式处理器是A1tera公司提出的SOPC解决方案,是一种用户可随意配置和构建的32位嵌入式处理器,结合丰富的外设可快速、灵活地构建功能强大的SOPC系统。Altera公司提供了一些通用的IP核,使得用户可轻松集成属于自己的专用功能;但对于一些特定的外设,没有现成可用的IP核,如液晶模块CBGl28064等。 用户可通过自定义逻辑的方法在SOPC设计中添加自定义IP核。在实际应用中,LCD液晶显示器凭借功耗低、体积小、轻薄及控制驱动简单等特点,在智能仪器、仪表和低功耗电子产品中得到了广泛应用。本文以深圳秋田视佳实业有限公司的液晶显示模块CBGl28064为例,在基于NioslI的SOPC系统中设计了LC
[嵌入式]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved