软核的意义何在?
把CPU做到FPGA里面,是可以自己定制外设,中断等其它东西,但我总想,一个8位单片机大厂做的片子都有几年的时间才能正式应用,还有许多的勘误。自己用软核,真的有意义么。
如果不涉及CPU,只拿FPGA或CPLD做接口,减少CPU的处理,这个还是很方便的 不懂。但我感觉板子上少个CPU肯定少不少麻烦。还有就是外部MCU的IO速度不知道是否能跟上FPGA? 软核只是对于我们这些不熟悉硬件描述语言的人才有用吧,会VHDL等的还是用硬件实现的好 软核都是经过很长时间验证的,你自己做个当然不能随便用 回复【楼主位】ralfak
把CPU做到FPGA里面,是可以自己定制外设,中断等其它东西,但我总想,一个8位单片机大厂做的片子都有几年的时间才能正式应用,还有许多的勘误。
自己用软核,真的有意义么。
如果不涉及CPU,只拿FPGA或CPLD做接口,减少CPU的处理,这个还是很方便的
-----------------------------------------------------------------------
加个CPU之后会减少很多麻烦 大部分CPU早晚都有停产的那一天
而软核,在可预见的未来都不会有问题 用硬件语言来进行一些操作比较麻烦,用软核增加了FPGA的灵活性,将mcu在控制方面的优势和FPGA在速度方面的优势结合起来了 楼主研究研究 fluke8845、8846 1. 除非用dsp或arm,否则一般的单片机速度远远跟不上FPGA,小系统除外
2. 使用软核可以减少pcb的设计复杂度
3. 可以很好的防止抄袭吧
4. 软核的自定义,可以很好的方便fpga工程师对自己的项目进行扩充,就是我需要多少资源,就可以给多少,想要几个软核就有几个(在器件容量允许的情况下)
5. ... 嵌入软核一般都是高级的核,如:arm,nios2,powerpc等。
一般不会嵌单片机。 嵌入式软核性能还是很高的,就是频率上不去而已。。 回复【10楼】ngzhang 兽哥
嵌入式软核性能还是很高的,就是频率上不去而已。。
-----------------------------------------------------------------------
在FPGA里面嵌软核只是为了简化工作,性能实在不怎么样 回复【11楼】liurangzhou
-----------------------------------------------------------------------
1周期1指令,还行了。 最主要的它的频率不可能跑得很高 处理器+PLD应该才是比较好的选择。 现在来说,
FPGA 对于大多数公司来说,是为了验证自己产品直到可以生产ASIC为止.
软核就是能够在FPGA上综合成电路用来验证的自己产品的,
硬核(layout)是用来生产的.
少数产品,如机顶盒Freebox,直接把FPGA作为特殊逻辑电路(作为可变解码器用) 回复【13楼】liurangzhou
-----------------------------------------------------------------------
对啊,所以我说了就是频率上不去啊~~ cpu的工作过程就是读指令,读数据,处理,写数据,所以51一个指令要12个时钟。唯一的优势就是用通用的电路加专用软件(指令和数据序列)实现了特出功能
FPGA快就快在它完全是用数字电路实现特出功能,唯一浪费的是大量的集成电路单元。一个时钟一个任务就完成了,和数字电路一样简洁明了。
fpga中加入CPU核确实不好理解。如果因为不会硬件描述语言而用cpu核就更本末倒置了。
我理解FPGA中加CPU核唯一可用的就是实现一些软件协议,比如TCP/IP,这个如果用硬件描述出来恐怕有点问题,于是CPU+指令实现,其他一些控制类的任务用fpga中加入CPU核确实不好理解。如果因为不会硬件描述语言而用cpu核就更本末倒置了 我个人有点排斥软核,觉得这个东西局限性较大,尤其是可移植性上。 用过ARM+FPGA,没用过软核。据说FPGA里要集成硬核的ARM,看好。 回复【16楼】ngzhang 兽哥
回复【13楼】liurangzhou
-----------------------------------------------------------------------
对啊,所以我说了就是频率上不去啊~~
-----------------------------------------------------------------------
单看NIOS II,在EP1C6里面还不能实现流水的,所以不能做到一周期一指令,要实现流水线,需要更大面积的,所以相比成本还是有点高,不过确实简化很多问题 回复【20楼】liurangzhou
-----------------------------------------------------------------------
microblaze最低是3级流水的,在spartan3里能跑到 50m 有的功能需要若干条指令反复调用分支循环判断才能完成一个工作,硬件实现比较困难,这时用软核 回复【21楼】ngzhang 兽哥
回复【20楼】liurangzhou
-----------------------------------------------------------------------
microblaze最低是3级流水的,在spartan3里能跑到 50m
-----------------------------------------------------------------------
microblaze我还不会用
回复【22楼】888888888888
有的功能需要若干条指令反复调用分支循环判断才能完成一个工作,硬件实现比较困难,这时用软核
-----------------------------------------------------------------------
正是 回复【23楼】liurangzhou
-----------------------------------------------------------------------
工具相当复杂。 很多场合需同时使用FPGA与ARM,一般FPGA用于并行的高速场合MCU用于复杂协议实现如TCP等
使用软核代替MCU可以减少PCB面积,提高硬件灵活性,例如:多个UART,SPI等
软核可以更好的建立FPGA与MCU的接口,例如:使用ARM连接Avalon总线比较麻烦,使用NIOS连接Avalon简单方便 回复【24楼】ngzhang 兽哥
-----------------------------------------------------------------------
工具相当复杂。
-----------------------------------------------------------------------
所以我感觉ALTERA的工具还是好用点,它的NIOS II工具很好用 一般用picoblaze也够了。
也不知道带arm硬核的Spartan-6什么时候出..... 我挖了个坑,哈哈
也不知道未来这个嵌入式会怎么发展
页:
[1]