基于NIOSII的I2C总线接口技术(2)

2019-03-28 12:25

基于NIOS II的IC总线接口设计

2

第一章 绪论

1.1 课题背景

随着科技不断发展,电子产品在人们日常生活中应用越来越广泛,已经成为了我们生活中不可或缺的一部分。在电子产品的设计中,其中I2C串口通信,以其简便性和其较少的接口占用的特性,使其在系统设计中得到广泛应用 [1] 。

I2C是由Philips开发的一个简单的双向两线式总线,可实现有效的IC之间的控制,现在的I2C总线包括超过150种CMOS和双极性兼容I2C总线的IC。所有符合I2C总线的期间组合了一个片上接口,这样器件之间直接通过I2C总线通讯,这样的设计概念解决了很多数字控制电路设计中遇到的接口问题。I2C总线有以下的优点:极低的电流消耗,抗高噪声干扰;I2C占用很少空间,减少了电路板的空间和芯片引脚数量,降低互联成本;在总线上连接的所有IC,都能够成为发送和接收设备,主控芯片为总线提供时钟脉冲,总线上任何时间点只能有一个主控芯片 [2] 。

1.2 研究的目的与意义

基于Nios Ⅱ的嵌入式系统的可应用领域很广,包括网络、无线通信、医疗器械、交通、消费电子、工业控制、军事和航空航天等。在巨大的市场需求面前,兼之Nios Ⅱ本身的众多优势,使Nios Ⅱ的应用具备了巨大的发展空间。

集成电路是中间产品,必须将它装入到整机上才能发挥其作用,具体地说是通过印刷电路版(PCB)来集成到整机上去的。由于PCB板中各种IC芯片之间的连线延迟较大,再加上PCB板体积大、重量大、可靠性差等原因,使得整机系统的性能及可靠性受到严重影响。随着高性能系统对系统复杂度、处理速度、功耗、功能多样化的要求,在现代信息处理与通信系统如网络、多媒体、移动通信和其它电子系统中迫切需要开发高性能的片上系统。而Nios Ⅱ,正是一个优秀的选择。Nios Ⅱ处理器具有完善的软件开发套件,包括编译器、集成开发环境(IDE)、JTAG调试器、实时操作系统(RTOS)和TCP/IP协议栈。设计者能够用Altera Quartus Ⅱ开发软件中的SOPC Builder系统开发工具很容易地创建专用的处理器系统,并能够根据系统的需求添加Nios Ⅱ处理器核的数量。长期以来,Altera一直推行嵌入式处理器战略的原因是,随着应用的ASIC开发日益受到

1

基于NIOS II的IC总线接口设计

2

成本的困扰,OEM日渐转向FPGA来构建自己的系统[3]。这些系统中绝大多数需要一个处理器,而Altera正是为设计者提供了为FPGA优化的灵活的嵌入式处理器方案,可以满足16位和32位嵌入式处理器市场的需求

基于Nios Ⅱ的系统实现了设计的可复用性,即使是同样一块开发板,根据载入的代码不同,可以实现不同的应用。这也是缩短开发周期、加快产品上市时间的一条捷径。

1.3 研究的基础、背景、现状

本题研究背景: 在集成电路发展初期,电路设计都从器件的物理版图设计入手,后来出现了集成电路单元库,使得集成电路设计从器件级进入逻辑级,这样的设计思路使大批电路和逻辑设计师可以直接参与集成电路设计,极大地推动了IC产业的发展。但集成电路不是最终产品,它只有装入整机系统才能发挥它的作用 [4] 。片是通过印刷电路板(PCB)等技术实现整机系统的。尽管IC的速度可以很高、功耗可以很小,但由于PCB板中IC芯片之间的连线延时、PCB板可靠性以及重量等因素的限制,整机系统的性能受到了很大的限制。

随着系统向高速度、低功耗、低电压和多媒体、网络化、移动化的发展,系统对电路的要求越来越高,传统集成电路设计技术已无法满足性能日益提高的整机系统的要求。同时,由于IC设计与工艺技术水平提高,集成电路规模越来越大,复杂程度越来越高,己经可以将整个系统集成为一个芯片。

正是在需求牵引和技术推动的双重作用下,出现了将整个系统集成在一个集成电路芯片上的系统芯片(System On Chip,简称SOC)概念。系统芯片与集成电路的设计思想是不同的,它是微电子设计领域的一场革命。SOC是从整个系统的角度出发,把处理机制、模型算法、软件(特别是芯片上的操作系统——嵌入式的操作系统)、芯片结构、各层次电路直至器件的设计紧密结合起来,在单个芯片上完成整个系统的功能。它的设计必须从系统行为级开始自顶向下。

本题研究的基础:I2C总线是电子产品中广泛应用的串行总线通讯协议,嵌入式系统的核心是CPU,以往采用的嵌入式CPU都是硬核器件,比如摩托罗拉公司的Coldfire, PowerPC等。最近几年出现了在FPGA片内实现的软核CPU。硬核CPU以硅片的形式提交给用户,而软核CPU则以设计文件的形式交付给用户,用户再根据自己的需求将其固化在FPGA 芯片内这种新出现的技术有着非常广阔的应用前景。

2

基于NIOS II的IC总线接口设计

2

本题研究的现状:随着微电子技术和计算机技术的发展,可编程逻辑器件、EDA技术、嵌入式系统、SOC、SOPC、IP、核等新概念和新技术层出不穷,新技术的应用迅速渗透到电子、通信、信息、机械制造、仪器仪表、航空航天、家用电器等领域,有力地推动了社会生产力的发展和社会信息化程度的提高[5]。

软核CPU的本质是一段实现特定功能的代码,需要一款合适的FPGA作为载体。Nios Ⅱ若配置在Cyclone Ⅱ中,只占用35美分的逻辑资源,若配置在Stratix Ⅱ中,可以实现超过20ODMIPS的高性能表现。在Cyclone Ⅱ中也可以达到超过lOODMIPS的表现,足以与中低密度的ASIC形成竞争。Nios Ⅱ不同于16位指令集的Nios,它是真正的32位软核CPU,具有32位的指令集、32位的数据路径和32位的寻址空间。Nios Ⅱ脱胎于Nios,并分化出7三个版本。一种是Nios Ⅱ/f,快速型;第二种是Nios Ⅱ/s,标准型;第三种是Nios Ⅱ/e,经济型。这三种产品都针对特定的价格和性能范围进行了优化,并都使用同样的指令集架构(ISA),具有100%二进制代码兼容性。快速版本的Nios Ⅱ具有最强的性能,其运算能力在175MHz时钟频率下可达大约200 Dhrystone MIPS(DMIPS)。它需要占用中等数量的FPGA资源,大约1180个逻辑单元。标准版本的性能略低于快速版本,其175MHz时钟频率下的运算能力为大约90DMIPS,但只需要占用800个逻辑单元。经济版本是三种版本中性能最弱的,其运算能力在190MHz时钟频率下仅能达到28DMIPS,但它所占用的FPGA资源最少,只需大约400个逻辑单元。可以根据自己设计的特定需求选择合适的软核。如果逻辑资源充裕,那么快速版本显然是首选。Nios Ⅱ处理器能通过Quartus Ⅱ开发软件中的SOPC Builder系统开发工具添加到设计者的系统中[6]。

关于Nios Ⅱ的开发现状。在baidu或google上用关键词Nios Ⅱ搜索,只有一些概要性的介绍,并无具体的开发实例报道。也曾经试图通过中国期刊网,以及国内较有影响力的水木清华等高校BBS的嵌入式开发版寻找相关资讯,但是少有收获。这也是正常的。Nios Ⅱ是Altera近几年新近推出的一款通用32位软核RISC CPU,目前作为开发板做教学、测试、实验的居多,比较著名的开发实例还没有,所以,可以说Nios Ⅱ还处于开始阶段。作为Altera免费提供的IP(intellectual property),根据Altera自己提供的资料,NiosⅡ软核在配合Stratix Ⅱ系列FPGA的情况下,可以实现超过20ODMIPS的性能表现。有这样美味的免费大餐可以吃,相信今后会有越来越多的人会加入Nios Ⅱ开发者的行列。

简要介绍一下国内外的几款Nios开发实例:

3

基于NIOS II的IC总线接口设计

2

1 无线阅读器 把Nios嵌入低成本FPGA Cyclone中,有小型化和低功耗两大特点,

执行数据处理和无线接收的功能。

2 光多业务节点 这是一款阿尔卡特开发的用于同步数字序列传输的产品。利用

Nios的定制指令功能和同步多Master总线结构(Avalon),实现了吉比特(Gigabite)速率码流的可靠传输。

3 ISDN协议处理器 飞利浦公司把Nios处理器运用于综合业务数字网的协议处理

器的在线更新。这一应用极大的提高了视频会议和IP网关服务的可靠性。 4 数码相机中的通用控制处理器 柯达公司在某型号的数码相机中成功的应用了

Nios处理器,作为DC的控制中枢。

5 国内对Nios的最高应用可能是某保密项目,该款应用同时使用了八个Nios软核,

把Avalon总线的多master功能发挥的淋漓尽致。

可以说,Nios是相当成功的。对比Nios,它的第二代Nios Ⅱ处理器更是青出于蓝而胜于蓝。Nios Ⅱ具备更强大的灵活性、更高的性能、更低的成本、占用更少的资源,能够满足各种嵌入式应用的性能要求。并且,Altera提供了更易用的Nios Ⅱ开发套件提供给客户。Altera曾将其两代软核做了对比,结果显示Nios Ⅱ只用了50%的逻辑单元就实现了2倍于Nios的性能[7]。

1.3.1 SOPC技术

SOPC(System-on-a-Programmable-Chip)即可编程片上系统,用可编程逻辑技术把整个系统放到一块硅片上,称作SOPC。可编程片上系统(SOPC)是一种特殊的嵌入式系统:首先它是片上系统(SOC),即由单个芯片完成整个系统的主要逻辑功能;其次,它是可编程系统,具有灵活的设计方式,可裁减、可扩充、可升级,并具备软硬件在系统可编程的功能。因此,著名的可编程逻辑器件生产厂家美国Altera公司提出了基于PLD的SOC设计方案——SOPC。

近年来SOPC技术已成为备受众多中小企业、研究所和大学院校青睐的设计技术。SOPC(System on a Programmable Chip)成为可编程片上系统,是Altera公司提出的一种灵活、高校的SOC解决方案,是一种新的软硬件协同设计的系统设计技术。SOPC集成了硬核或软核CPU、DSP、锁相环(PLL)、存储器、I/O接口及可编程逻辑,可以灵活高效地解决SOC方案,而且设计周期短,设计成本低 [8] 。Nios Ⅱ是一种软核

4

基于NIOS II的IC总线接口设计

2

(Soft-Core)处理器,软核处理器最大的特点就是可由用户需要进行设置。与专用CPU不同的是,Nios Ⅱ是一个用户可以自行定制的CPU,用户可以增加新的外设、新的指令,分配外设的地址等。Nios Ⅱ的硬件开发就是由用户制定适合的CPU外设,Altera公司的SOPC Builder提供了大量的IP Core来加快Nios Ⅱ外设的开发速度。综合来看,SOPC是PLD和ASIC技术融合的结果,可以认为SOPC代表了半导体产业未来的发展方向,对SOPC进行深入的研究不仅有利于半导体产业的发展,同时对微电子技术和计算机技术的发展也具有重要的意义。

SOPC技术主要应用以下三个方向:

1 基于FPGA嵌入IP硬核的应用。这种SOPC系统是指在FPGA中预先植

入处理器。这使得FPGA灵活的硬件设计与处理器的强大软件功能有机地结合在一起,高效地实现SOPC系统。

2 基于FPGA嵌入IP软核的应用。这种SOPC系统是指在FPGA中植入软

核处理器,如:NIOS Ⅱ核等。用户可以根据设计的要求,利用相应的EDA工具,对NIOS Ⅱ及其外围设备进行构建,使该嵌入式系统在硬件结构、功能特点、资源占用等方面全面满足用户系统设计的要求。

3 基于HardCopy技术的应用。这种SOPC系统是指将成功实现于FPGA器

件上的SOPC系统通过特定的技术直接向ASIC转化。把大容量FPGA的灵活性和ASIC的市场优势结合起来,实现对于有较大批量要求并对成本敏感的电子产品,避开了直接设计ASIC的困难。

本设计是基于FPGA嵌入IP软核的应用用,在硬件设计中植入NIOS Ⅱ软核处理器,根据I2C总线的设计要求,对对NIOS Ⅱ及其外围设备进行构建。

1.3.2 Quartus II

Quartus Ⅱ 是Altera公司的综合性PLD开发软件,支持原理图、VHDL、VerilogHDL以及AHDL(Altera Hardware Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。Quartus Ⅱ是继承Altera Max+plus Ⅱ后的新一代开发工具,适合大规模FPGA的开发。Quartus Ⅱ提供了更优化的综合和适配的功能,改善了对第三方仿真和时序分析工具的支持[9]。Quartus Ⅱ还包含DSP Builder和SOPC Builder等

5


基于NIOSII的I2C总线接口技术(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:高一新人教版政治必修2考案1 第一单元学习质量检测题 Word版含解

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: