C-Model以及ASIC设计

之前的工作中对C-Model有过简单接触,当时的情况是在客户现场遇到一个视频解码问题,简单描述就是一段码流经过VPU解码后,显示出来的画面有一点儿轻微马赛克,当时不确定是码流问题还是VPU IP内的解码算法问题,后面对比了样机表现,发现样机OK。于是基本确定问题发生在VPU算法上,VPU是当时的东家设计的,于是就把码流拿回去请专家分析。专家很快就给出了分析结果以及解决方案,至于为何这么快,后来才了解到,专家把码流在CModel上跑了一遍,很快复现到问题,后面解决问题也水到渠成了。

虽然用过,但理解不深,只是大概猜测可能是因为视频解码逻辑本身是一个确定性问题,随机性不发生影响,所以可以用按照VPU IP 算法同样的设计编写的C 代码来解同样一笔数据,由于算法本身是一样的,所以无论是在芯片上跑还是在CMODEL上跑,结果都是一样的,都可以说明问题。

直到看到一篇文章,对这个过程的理解加深了一层,简单写下自己的理解。

一颗芯片芯片设计过程从端到端的角度理解,流程如下

C-Model以及ASIC设计_第1张图片

在芯片的架构设计阶段需要对芯片进行建模,建模的主要目的是在大规模投入人力之前先用低成本的计算机软件实现目标芯片的主要功能,评估芯片的工作效果,验证设计思想,并作为后续开发活动的标准和依据。从这个意义上说,C Model的开发团队是芯片设计团队的先锋队,需要承担逢山开路、遇水搭桥的光荣任务,为后续大部队扫清前进通路上的障碍。

你可能感兴趣的:(算法,Linux,c语言,fpga开发,开发语言)