8.2Altera公司的NIOSII解决计划
8.2.1NIOS的首要特点
NIOSII是一个用户可装备的通用RISC嵌入式处理器。Altera推出的NIOSII系列嵌入式处理器扩展了现在世界上最盛行的软核嵌入式处理器的功用。
把NIOSII嵌入到Altera的FPGA,如StratixII、Stratix、CycloneII、Cyclone、APEX、ACEX和HardCopy系列器材中,用户可以获得超越200DMIPS的功用,可以从3种处理器以及超越60个的IP核中挑选所需求的功用。
运用NIOSII处理器的用户可以依据他们的需求来调整嵌入式体系的特性、功用以及本钱,快速使得产品推向市场,扩展产品的生命周期,并且防止处理器的更新换代。
下面是NIOSII处理器的长处和特性。
(1)进步体系功用。
·一系列的处理器核可供挑选,其间包含了超越200DMIPS功用的核。
·完结任何数量的处理器或将不同的处理器核组合在一起。
·添加了已有的处理器,在FPGA中添加一个或更多的NIOSII软核处理器。
(2)更低的体系本钱。
·经过将处理器、外设、存储器和I/O接口集成到一个单一的FPGA中,然后降低了体系本钱、杂乱性和功耗。
·经过将NIOSII处理器嵌入到低本钱的FPGA中只需花费35美分或许更低(对大多数用户而言,NIOSII所占逻辑资源的本钱大约是10~20元人民币,详细取决于所选FPGA的类型和NIOSII的装备)。
(3)应对产品的生命周期。
·供给易用的规划东西然后快速将产品推向市场。
·供给永久、免费的答应,然后使根据NIOSII处理器的产品防止了处理器的更新换代而带来的丢失。
(4)功用强壮、易用的开发东西。
·经过运用NIOSII集成开发环境(IDE),然后加快了软件的开发。
·运用Altera的强壮的SOPCBuilder体系开发东西和QuartusII规划软件可以在几分钟内规划一个体系。
(5)运用彻底功用的开发包。
·运用易用的NIOSII开发包开端一个规划。
·运用易用的NIOSII开发包开端规划。
·可以挑选具有低本钱特性的CycloneFPGA开发套件,或高功用的StratixIIFPGA开发套件。
在许多对速度的要求不是很高的低端运用中,Altera将一个软核放入PLD,这个软核便是NIOS。它只占芯片内部很少的一部分逻辑单元,本钱很低。同ASIC相比较,假如将处理器放到ASIC中,出产的每片芯片都要交给处理器厂商专利费。何况ASIC的NRE(一次性出资)大,危险也大,NIOS则没有这个问题。NIOS的开发东西包价格很低。
在速度要求高的高端运用,如通讯范畴,软核的处理速度不行。Altera就将硬核(ARM9)集成到APEX器材中,还集成入RAM和RAM控制器。一起Altera本身在PLD的结构方面也不断发展和立异,推出的HardCopyStratixIII器材系列,是一个针对大容量规划的,从原型规划到批量出产的完好解决计划,企图成为ASIC的全面代替计划。
8.2.2NIOS技能完结办法
1.规划东西
Altera的Max+PlusII曾是运用广泛、十分受欢迎的PLD(可编程逻辑器材)规划软件。它关于FPGA和CPLD这些PLD器材的运用推行、电路部件和嵌入式体系的规划,以及高校有关专业的教育实习,做出了十分重要的奉献。
近年来,为习惯微电子技能及其运用的飞速发展,尤其是SoC(片上体系)技能发展的需求,Altera推出了新版本的PLD规划软件QuartusII。它承继了Max+PlusII的一切长处,是愈加完善的PLD规划东西。
PLD的规划东西首要包含:不同的规划输入(包含原理图,VHDL或Verilog-HDL)东西、归纳仿真东西、时限剖析东西、功率评价东西、PLD布局布线东西和产品验证东西等。
Altera的SOPC开发东西SOPCBuilder,将软硬件的规划结合起来,供给给客户一个很好的开发环境,创始了嵌入式体系规划的新理念。
2.SOPCBuilder
SOPCBuilder是一个软件东西,它归于一种根据IP或许渠道的规划办法。运用SOPCBuilder,用户可以很方便地将处理器、存储器和其他外设模块衔接起来,构成一个完好的体系。
SOPCBuilder中已包含了NIOS处理器以及其他一些常用的外设IP模块。用户也可以规划自己的外设IP。从用户的视点来看,SOPCBuilder是一个可以生成杂乱硬件体系的东西。但从内部来看,SOPCBuilder包含两个首要部分:一个图形用户界面(GUI)以及一个体系生成程序。
(1)SOPCBuilder图形用户界面。
SOPCBuilder图形用户界面供给办理IP模块、装备体系和陈述过错等功用。用户经过图形用户界面规划体系。完结规划之后,单击“Generate”按钮,则发动体系生成程序。体系生成程序一般从图形用户界面中发动。
(2)体系生成程序。
体系生成程序履行许多的功用,创立简直一切的SOPCBuilder输出文件(HDL逻辑文件,C程序的头文件和库文件,模仿文件等)。所以,SOPCBuilder可看作是一个以IP模块为输入,集成的体系为输出的东西。
SOPCBuilder会提示用户设置参数,并提示运用哪些可选的端口和外设。一旦导游生成了NIOS体系模块,则可以在规划文件中生成实例。一些惯例硬软件接口、中止子程序等,都可被SOPCBuilder完结,节省用户许多时刻,并且更牢靠。
3.NIOSII指令结构
NIOSIICPU是一种选用流水线技能、单指令流的RISC处理器,其大部分指令可以在一个时钟周期内完结。NIOSII处理器又是一种软核CPU,专门针对Altera的可编程逻辑器材以及片上可编程体系的规划思维,做了相应优化。
作为一种可装备的通用RISC处理器,它可以与用户自定义逻辑(userlogic)结合构成SoC体系,并下载到Altera的可编程器材中去。32位NIOS软核,结合外部闪存以及大容量存储器,可构成一个功用强壮的32位嵌入式处理器体系
在Altera的NIOSII嵌入式处理器中,用户可以在NIOSII指令体系中添加用户自定义指令,以增强其对强实时软件算法的处理才能。用户自定义指令可以经过单周期或多周期操作来完结杂乱的处理使命。
别的,添加的用户自定义指令相同可以拜访存储器或NIOS体系外的逻辑。选用用户自定义指令,用户可以把一个杂乱的标准指令序列,简化为一条用硬件完结的单个指令。这一特功用够用于多种状况,例如对数字信号处理(DSP)、数据包处理以及核算密集型软件进行优化。
4.Avalon总线
Avalon总线是一种将片上处理器和外设衔接成片上可编程体系(SOPC)的一种简略总线结构。它描绘了主从构件间的端口衔接联系,以及构件间通讯的时序联系。Avalon总线标准供给了各种选项,来取舍总线信号和时序,以满意不同类型外设的需求。
SOPCBuilder可以主动发生Avalon总线。Avalon总线也包含许多特性和约好,用以支撑SOPCBuilder软件主动生成体系、总线和外设。片上可编程体系(SOPC)的规划人员在嵌入式体系开发和调试时,还有其他辅助东西,例如:ModelSim模仿器,以及其他监控、调试东西等。