以处理器为例,软核和硬核的区别如下:
1、范围不同
软件核心包括逻辑描述(RTL和门级Verilog-HDL或VHDL代码)、设备内部接线清单和可测试性设计,这些设计不能通过台式仪表和信号仪表、示波器、电流表和电压表进行测试。用户可以对软核进行修改,实现所需的电路系统。它主要应用于对速度性能要求很高的复杂系统中,如接口、编码、解码、算法和信道加密等。
硬核的设计和工艺已经完成,不能更改。其产品包括存储器、模拟电路和总线设备。常用的嵌入式处理器硬核包括arm、MIPs、PowerPC、Intel x86、Motorola 68000等。
2、功能不同
硬核是一种基于半导体技术的物理设计,具有性能保证。提供给用户的形式是电路物理结构的掩模布局和一套完整的工艺文件,可以作为一套完整的技术。
软核用户可以合成正确的门电路级设计网表,并能进行后续的结构设计,具有很大的灵活性。借助EDA综合工具,可以方便地与其他外部逻辑电路集成,并根据不同的半导体工艺设计成不同性能的器件。
3、含义不同
软核通常以HDL文本的形式提交给用户。它已经过RTL级设计的优化和验证,但不包含任何具体的物理信息。硬核是一个已经被集成和连接的处理器。