刚刚看到的新闻:Altera内建双ARM Cortex-A9的FPGA发布了,没想到早期预言的Altera内建硬核的FPGA终于成为现实 ------ 在Xilinx发布了Zynq后,Altera终于有实际的回应了;而且最令人兴奋的是居然在Costdown版本的Cyclone中内建了两颗ARM Cortex-A9,看来我所预想的未来软硬件混合编程已经慢慢的成为了现实 ----- 其Cyclone版本意味着FPGA的价格因素将不是障碍,同时内嵌硬核也使FPGA被诟病的低效能逐渐成为历史;
新的Cyclone-V的架构如下:
新的Cyclone-V除了具有早期Cyclone的硬件乘法运算单元外(也称为DSP块),最大的变化是增加了一个被称之HPS的硬件单元(Hard processor system),该单元相对早期Cyclone的NIOS内核有本质的区别:早期的NIOS单元完全是基于FPGA的“软”CPU,因此,在效能上无法和近代的硬核CPU相抗衡,更多的仅仅是提供了一低成本的且效能不高的解决方案;而新的HPS系统的本质改变时真正的硬核;
新的HPS具有如下的特性:
- 采用TSMC-28nm工艺流程,1.1V核心电压。
- 内建双800-MHz的ARMCortex-A9硬核处理器,支持SMP;
- 其中每个硬核处理器具有如下功能:
- 32KB的L1 Instruction Cache和32KB的L1 Data Cache
- 符合IEEE-754的单精度、双精度浮点运算单元及128位NEON的SIMP媒体引擎
- CoreSightTM调试和跟踪技术
- 512KB的共享L2高速Cache
- 多端口SDRAM控制器,支持DDR2、DDR3和LPDDR1、LPDDR2
- 8通道DMA控制单元
- QSPI闪存控制器
- 支持DMA的NAND控制器
- 支持DMA的SD/SDIO/MMC控制器
- 2个10/100/1000 Tthernet控制器,支持DMA
- 2个OTG的USB控制器,支持DMA
- 2个I2C的控制器
- 2个16550-UART控制器
- 2个SPI串行接口(SPI)
- 134个通用IO;支持3.3V 16mA的驱动能力
- 7个通用定时器
- 4个Watch Dog
- 64KB On-Chip RAM
当前已经公布的Cyclone V SE系列如下:
另外还有用于高速收发器的GX系列和GT系列 ----- 这不是我所关心的了;
虽然HPS作为一个独立的部件可以单独工作,但是,HPS可以通过高性能的ARM AMBA AXITM总线进行紧密连接,同时在程序的控制下,可以通过专用的32位配置端口,由CPU对FPGA架构进行配置;
开发上支持Altera新发布的Qsys IDE开发环境(应该是早期SOPC Builder的替代者):
同时令人兴奋的虚拟目标的开发环境也在近期发布:在我的理解下就是在实际硬件设计完成前可以先透过软件完成前期原型的开发,而这些虚拟目标与实际的硬件具有兼容性;这样可以很低成本的在PC完成前期的验证,在实际硬件完成后,这些代码可以很容易的配置到真正的硬件上;新的虚拟目标同样支持Cyclone V SE,其OS支持vxWork和Linux;
是不是已经眼花缭乱,详细规格我也在研究中,不过这样的配置确实已经很让我兴奋了 ----- 唯一遗憾的是我的Cyclone-III开发版,那个只支持NIOS的板子似乎已经成为了老古董了;套用现在最时髦的一句话:不管你信不信软硬件混合编程时代的即将到来,反正我是相信了。