芯片硬件设计流程
来源:龙人计算机研究所 作者:站长 时间:2008-03-07 17:17:34
芯片开发一般有芯片硬件设计和软件协同设计等环节,其中芯片硬件设计流程如下:
1.功能设计阶段。
设定一些诸如功能、操作速度、接口规格、环境温度及消耗功率等规格,以做为将来电路设计时的依据。更可进一步规划软件模块及硬件模块该如何划分,哪些功能该整合于SOC内,哪些功能可以设计在电路板上。
2.设计描述和行为级验证能设计完成后,可以依据功能将SOC划分为若干功能模块,并决定实现这些功能将要使用的IP核。此阶段将接影响了SOC内部的架构及各模块间互动的讯号,及未来产品的可靠性。
决定模块之后,可以用VHDL 或Verilog 等硬件描述语言实现各模块的设计。接着,利用VHDL 或Verilog 的电路仿真器,对设计进行功能验证(function simulation,或行为验证 behavioral simulation)。注意,这种功能仿真没有考虑电路实际的延迟,但无法获得精确的结果。
决定模块之后,可以用VHDL 或Verilog 等硬件描述语言实现各模块的设计。接着,利用VHDL 或Verilog 的电路仿真器,对设计进行功能验证(function simulation,或行为验证 behavioral simulation)。注意,这种功能仿真没有考虑电路实际的延迟,但无法获得精确的结果。
3.逻辑综合
确定设计描述正确后,可以使用逻辑综合工具(synthesizer)进行综合。综合过程中,需要选择适当的逻辑器件库(logic cell library),作为合成逻辑电路时的参考依据。硬件语言设计描述文件的编写风格是决定综合工具执行效率的一个重要因素。事实上,综合工具支持的HDL语法均是有限的,一些过于抽象的语法只适于做为系统评估时的仿真模型,而不能被综合工具接受。
4.门级验证(Gate-Level Netlist Verification)
门级功能验证是寄存器传输级验证。主要工作是要确认经综合后的电路是否符合功能需求,该工作一般利用门电路级验证工具完成。注意,此阶段仿真需要考虑门电路的延迟。
5.布局和布线
布局指将设计好的功能模块合理安排在芯片上,规划好它们的位置。布线则指完成各模块之间互连的连线。