当前位置:首页 > 测试测量 > 测试测量
[导读]摘要:以Altera公司的FPGA芯片EP2C20Q208C8为例,详细介绍了在QuartusII 7.2的环境下,用SOPC Builder构建Nios软核时,自定义FIFO接口元件的方法。通过将采集到的电压信号,在数码管上显示的实验,实现FIFO寄存器与

摘要:以Altera公司的FPGA芯片EP2C20Q208C8为例,详细介绍了在QuartusII 7.2的环境下,用SOPC Builder构建Nios软核时,自定义FIFO接口元件的方法。通过将采集到的电压信号,在数码管上显示的实验,实现FIFO寄存器与Nios CPU之间的通信。
关键词:现场可编程门阵列FPGA;Nios;先进先出;可编程片上系统Builder

0 引言
    随着微电子技术和半导体工业的不断发展,数字技术已进入片上系统时代。从而又发展了SOPC(可编程片上系统),SOPC是Altera 公司提供的片上可编程系统解决方案。Nios嵌入式处理器是Altera公司推出的软核CPU,提供给用户,并在Altera的FPGA上实现优化,用于 SOPC集成
并在FPGA上实现,提高了系统的灵活性和扩大范围。
    自定义外设是SOPC系统灵活性的重要体现,是SOPC系统中极其重要的一种设计方法。在大量的数据常需要处理时,利用自定义外设由具体的硬件来实现,可以极大程度地提高系统运行的速度,同时便于系统的模块化与集成化,是SOPC系统设计的重中之重。定制的用户外设能够以“硬件加速器”的形式实现各种各样用户要求的功能。

1 定制Avalon总线型FIFO接口元件
    由于选用的AD采样速率非常高,并且只由时钟控制端控制,因此设计时在AD采集模块和Nios CPU之间加一个FIFO存储器,从系统外部接口送来的数据先在FIFO中缓存,然后将数据读入SDRAM,在片上进行数据处理。整个流程在FPGA平台上采用SOPC方法实现。在SOPC Builder中只有厂商提供的片上FIFO接口控制器,没有外部使用的FIFO接口控制器核,因此需要用户自定义FIFO接口控制器,这样才能满足系统外围电路的应用要求。文中采用创建元件配置向导定制FIFO接口元件的方法。

2 用户自定义IP核的开发流程
    自定义外设作为NiosII软核处理器超强灵活性的体现,它的开发要遵循一定的规律。一个用户自定义外设必须用硬件描述语言来描述硬件的逻辑。用户自定义IP按照对Avalon总线操作的不同可分为Avalon Master、Avalon Slaver和Avalon Streaming外设。由于Avalon Master和Avalon Streaming外设的开发比Avalon Slave外设要复杂,所以用户开发的外设大部分为Avalon Slave外设,但是开发流程是一样的。典型的Avalon外设的开发步骤如下:
    (1)规划元件的硬件功能。若采用微控制器控制该元件,则规划访问该硬件的应用程序接口(API);
    (2)在硬件和软件要求的基础上,定义一个恰当的接口(一般为Avalon Slave端口);
    (3)使用硬件描述语言描述硬件逻辑。一个典型元件的硬件架构一般由接口模块、寄存器文件模块和行为模块3部分组成。接口模块作为顶层模块,定义总线接口信号;寄存器文件模块完成该元件与外部信号的通信,提供访问与控制元件的逻辑界面;行为模块实现元件的硬件功能。片上总线Avalon从端口的信号都不是必须的,一个典型的Avalon从端口所包含的信号如表1所示。


    (4)单独验证元件的硬件功能;
    (5)写用于描述寄存器的C头文件为软件定义硬件寄存器映像;
    (6)写元件的驱动软件;
    (7)把通过测试的源代码使用元件编辑器封装硬件HDL和软件文件,完成元件定制。
3 自定义FIFO接口的开发
3.1 硬件构建
3.1.1 接口模块的设计
    根据FIFO的功能需要,该模块所需的Avalon总线输入信号为clk、reset n、data、full、empty信号,而模块输出则为rdclk、rdreq、wrreq信号。该接口模块定义了总线接口信号,作为顶层模块。
    Avalon总线接口设计文件的端口说明部分如下:
   
3.1.2 寄存器文件模块
    寄存器文件模块实现与外部信号的通信,提供了访问与控制元件界面。在寄存器文件中,Avalon总线的地址信号有两位,00表示读取数据寄存器,O1表示读取状态寄存器,10表示写控制寄存器,address的11保留。在片选和读信号的控制下,分别读数据寄存器和状态寄存器。在片选和写信号的控制下,向控制寄存器写入数据。
3.1.3 行为模块
    行为模块实现元件的硬件功能,当写请求(wrreq)信号有效时,向数据寄存器中写入数据,当读请求(rdreq)信号有效时,读取数据寄存器中的数据。在QuartusⅡ7.2环境下,基于EP2C20Q240C8器件的FIFO接口的仿真波形如图1所示。


3.2 FIFO接口模块的添加
    在Quartus II工程中打开SOPC Builder,在SOPC Builder界面的左栏中点击Create new component打开创建元件向导,弹出Component Editor,在HDL Files选项卡中添加HDL文件(FIFO interface.vhd),并将其设置为顶层模块。在Signals选项卡中出现FIFO interface中定义的信号。若出现红色字体表示错误,需要将其接口类型修改一下,如reset n被指定为clock类型,传输方向为input,数据宽度为1,read-data被指定为avalon_slave类型,传输方向为output,数据宽度为32,data被指定为export类型,传输方向为export,数据宽度为32,等等。修改完之后,FIFO的地址对齐方式选择动态地址对齐"Mermory(use dynamic bussizing)"。时序设置也很重要,设置不当会造成数据的错误传输。系统FIFO的读写时钟为50MHz,周期为20ns,设定建立时间为 1ns,将所有设置设置完之后进行保存。保存完之后在该工程目录下会出现FIFO_interface_hw.tcl文件,FIFO控制器接口就出现在左栏中,若想在其它工程中使用该控制器,最简单的方法是将FIFO_inter-face.vhd、FIFO interface hw.tcl在FIFO interface hw.tcl~放在一个文件夹里,并将此文件夹放在QuartusⅡ的安装目录的ip文件夹中。
3.3 Nios CPU模块
    搭建好SOPC框架之后,生成CPU原理图模块如图2所示。其中第二部分就是FIFO接口文件生成的模块图,包括输入信号(data、 empty、full)和输出信号(rdclk、rdreq、wrreq)。两个PIO接口con和seg,分别用作数码管的位选通和段选通。



4 软件设计
    软件设计包括寄存器头文件、驱动软件及测试程序的设计。寄存器头文件FIFO reg.h定义了对FIFO进行读写操作的宏。IORD和IOWR是硬件抽象层提供的两个访问寄存器的C语言宏。下面代码是对FIFO的数据寄存器、状态寄存器和控制寄存器进行读写操作的宏。
    驱动软件包括FIFO.h和FIFO.c文件。FIFO.h定义了驱动函数的原型和常量,FIFO.c则实现驱动函数的功能。FIFO.c中定义了一个函数,实现将采集到的数据在数码管上显示的功能。例如采集到电压值为5V电压时,数码管上显示5.00。

5 结束语
    本文通过介绍基于SOPC的自定义FIFO接口的详细过程,用户可以在SOPC设计环境下自定义任意接口控制器。定制元件是SOPC Builder灵活性的重要体现,大大扩展了NiosⅡ系统的应用范围。本设计采用VHDL语言编写SOPC用户自定义逻辑模块,实现FIFO接口控制器的设计,此模块已经成功地在FFGA上实现数据采集模块与Nios CPU之间的通信。通过创建元件配置向导定制FIFO接口元件的方法,对定制元件的设计具有较好的借鉴作用。

 

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

助力科研与检测新突破 上海2024年5月15日 /美通社/ -- 全球知名的科学仪器和服务提供商珀金埃尔默公司今日在上海举办了主题为"创新不止,探索无界"的新品发布会,集中展示了其在分析仪器领域的最...

关键字: 质谱仪 BSP DSC 气相色谱

上海2024年5月16日 /美通社/ -- 2024年5月10日至5月13日,富士胶片(中国)投资有限公司携旗下影像产品创新力作亮相北京P&E 2024。在数码相机展览区域,全新制定的集团使命"为世界绽...

关键字: 富士 数码相机 影像 BSP

贝克曼库尔特目前已成为MeMed Key免疫分析平台和MeMed BV检测技术的授权经销商 在原有合作的基础上,继续开发适用于贝克曼库尔特免疫分析仪的MeMed BV检测 加州布瑞亚和以色列海法2024年5月16日...

关键字: BSP IO 检测技术 免疫分析仪

英国英泰力能的燃料电池是可产业化的产品解决方案 英国首个专为乘用车市场开发的燃料电池系统 在 157kW 功率下,此燃料电池比乘用车的其他发动机更为强大 &...

关键字: ENERGY INTELLIGENT 氢燃料电池 BSP

深爱人才,共赴"芯"程 深圳2024年5月15日 /美通社/ -- 5月11日,深圳国资国企"博士人才荟"半导体与集成电路产业专场活动在深圳市重投天科半导体有限公司(简...

关键字: 半导体 集成电路产业 BSP 人工智能

武汉2024年5月15日 /美通社/ -- 北京时间4月26日-5月4日,2024 VEX 机器人世界锦标赛于美国得克萨斯州达拉斯市举办。本届 VEX 世锦赛为期九天,设有 VIQRC 小学组/初中组、V5RC 初中组/...

关键字: 机器人 BSP RC POWERED

上海2024年5月15日 /美通社/ -- 由生成式人工智能(AI)驱动的临床阶段生物医药科技公司英矽智能宣布,与复星医药(600196.SH;02196.HK)合作开发的潜在"全球首创"候选药物IS...

关键字: ISM BSP PC 人工智能

上海2024年5月13日 /美通社/ -- 5月8日,浦东新区国资委组织陆家嘴集团等9家区属企业与立邦中国召开合作交流会,旨在贯彻落实浦东新区区委、区政府工作要求,进一步放大进博会溢出带动效应,持续扩大区属企业与进博会重...

关键字: BSP 数字化 自动化立体仓库 智慧园区

上海2024年5月13日 /美通社/ -- 在数字化时代,高效的税务管理和ERP系统成为企业发展的关键。为了满足这一需求商应信息科技与Exact Software 易科软件就金四全电票税系统与ERP系统集成及商务合作建立...

关键字: AC 软件 BSP 数字化

北京2024年5月13日 /美通社/ -- 5月11日,鲲鹏昇腾开发者大会2024期间,华为举办"昇思AI框架及大模型技术论坛",软通动力数字基础设施与集成事业部总经理谢睿受邀出席、软通动力...

关键字: AI 模型 BSP 精度
关闭
关闭