60秒计时器的仿真电路_定了!最高8万元奖金,你来不来!——集成电路EDA精英挑战赛...

b2c825684f7d2c72c20fd0b872a4e019.png

d6fb53529a576c0ba840289aa7a26b13.png

a3d6af60c41314573cb6539212ccfa1d.png

a3d6af60c41314573cb6539212ccfa1d.png

比赛官网:http://eda.icisc.cn/

集成电路EDA设计精英挑战赛赛题指南

Synopsys篇

1.赛题名称

Exploring AI SoC System Design with Virtual Prototyping–Pushing the Speed Barrier

2.赛题描述

Modern SoCs are getting more and more complicated as they integrate more and more functionality, not only in hardware (HW) side but also in software (SW). Developing SW after the HW ready is no longer efficient and competitive in the industry. There is a strong need to design HW and SW in parallel using Virtual Prototyping technology especially in the hot & fast paced vertical market of AI and ML.

Synopsys’ solution for Virtual Prototyping are Virtualizer Development Kits (VDKs). It is a transaction-level simulation technology based on the IEEE SystemC language, which can run the actual binary software images. The VDK targeted in this competition consists of several Arm Cortex A55s, GIC500, DDR & SRAM memory, UART, and a model of the NVDLA AI accelerator, the open source AI accelerator from Nvidia (http://www.nvdla.org). This VDK boots Linaro Linux less than one minute and provides simple CNN network examples including LeNet, AlexNet & ResNet.

Below are target tasks that you can choose to work on (Task 1 is mandatory, Task 2 or 3 you can choose one of them, or even both):

Select one image classification NN (Neural Network) algorithm, train it on the host and port it to the VDK utilizing the NVDLA AI accelerator.

Optimize the simulation speed of the NVDLA accelerator model: the open source NVDLA model is written in SystemC and currently its simulation speed is medium level, partially as its abstraction level targets high-level synthesis. Criteria is here is to push the speed limit of the NVDLA model, highest simulation time wins. Here are some suggested techniques you can try:

Idea 1: use specialized x86 (SIMD) instructions to speed up critical algorithm computational functions (convolution, pooling, …) inside the NVDLA model.

Idea 2: utilize a host GPU to accelerate computation of the NVDLA model.

Other (creative) ideas are accepted too, as long as the ML software executes “as is” on the VDK target.

Compiler optimization: the hardware design (i.e. RTL) of NVDLA is open sourced by Nvidia; however, the NVDLA ML compiler is only available in binary format, preventing the detailed tuning & optimization of the ML compiler. Port an open source ML compiler of choice and target it to support the NVDLA accelerator (reference: https://github.com/ONNC/onnc). And instrument the NVDLA model with statistics collection (e.g. NVDLA sub-core occupation %, data & weights transfer latency, …), allowing to give feedback on the compiler tuning.

3.评分标准

a)技术评分:60%

完成度:任务流程设计完整,作品完成度高 30%

创新性:设计过程思路新颖,有一定创新 10%

合理性:作品设计合理,综合使用EDA工具 5%

规范性:设计过程规范 5%

产业化:技术实用度高,具有实际产业化前景 10%

b)现场表现:40%

答辩陈述:内容紧扣主题,表达简要准确、思路清晰 20%

回答问题:正确理解问题,准确、迅速回答问题 20%

4.Synopsys赛题讨论QQ群:704123463

Cadence篇

1.赛题名称

Complex Hierarchical Digital Design Implementation & Scripting

2.赛题描述

Complex Hierarchical Design Implementation with Genus and Innovus

Perquisite:

1.Physical Design Methodology (Genus/Innovus based digital front-end/back-end)

2.Tcl Scripting

Target:

Use Genus/Innovus to implement a hierarchical design (RTL->GDSII), use complex tcl script to do advanced timing analysis and eco

Details:

1.Use Genus to do synthesis

2.Analyze the design and decide how to partition based on design challenges

3.Try to improve PPA (Performance/Power/Area) with Genus/Innovus optimization

4.Complex DBTcl/CTETcl based Tcl scripting challenge

技术评分点:

1.任务流程完成度

2.选择不同Die之间partition/module划分的理由以及最终实现完成度

3.PPA

4.脚本能力,数据处理及呈现能力

5.现场答辩,回答问题(对技术流程的理解)

3.评分标准

a)技术评分:60%

完成度:任务流程设计完整,作品完成度高30%

创新性:设计过程思路新颖,有一定创新10%

合理性:作品设计合理,综合使用EDA工具5%

规范性:设计过程规范5%

产业化:技术实用度高,具有实际产业化前景10%

b)现场表现:40%

答辩陈述:内容紧扣主题,表达简要准确、思路清晰20%

回答问题:正确理解问题,准确、迅速回答问题20%

4.Cadence赛题讨论QQ群:703579293

华大九天篇

Compressing方向

1.赛题名称

针对电路仿真输出结果的高效压缩

2.赛题描述

在电路仿真过程中,会存储电路的一些信号随时间变化的状态,以便进行后续的查看和分析。随着电路规模的增大和对精度要求的提高,需要查看的信号个数和时间点也急剧增加,导致所存储的波形文件达到几GB甚至几百GB,给存储空间带来了压力。考虑到电路信号的一些特点,可以对其进行压缩,减小波形文件大小。

关于“在电路仿真过程中,会存储电路的一些信号随时间变化的状态,以便进行后续的查看和分析。随着电路规模的增大和对精度要求的提高,需要查看的信号个数和时间点也急剧增加。”例如一个包含100万MOS管的电路,在提取寄生RC参数之后,可能会包含1000万量级的RC,节点数也会达到1000万量级,节点数也在1000万量级。如果设置仿真时间为1us,由于高精度的需要,平均步长为0.1ns,会产生10000个时间点。如果所有信号和所有时间点都需要保存,那么产生的波形文件大小就是1e7*1e4*8*1e-9=800GB.即使只保存1%的信号,那也需要8GB的存储空间,这给存储空间带来了压力。考虑所存储的电路信号的特点,和精度要求,可以将这些信号进行压缩,然后存储下来。希望能够开发一种针对电路仿真结果波形的高效压缩算法,使得存储文件的大小能够明显减小。

竞赛规则:

1.对给定的若干个电路波形文件进行压缩,综合考虑压缩比(50分),压缩时间(20分)和解压缩时间(30分),最后求每个文件得分的平均分。压缩比定义为原始文件大小与压缩后文件大小的比值,压缩比越大,分数越高;压缩时间为读取原始文件,到输出压缩文件完成的时间,时间越短,分数越高;解压缩时间为读取压缩之后的文件,随机查找1%的信号,所需要的时间,时间越短,分数越高。

2.由于波形文件在仿真过程中产生,仿真一个时间点,产生各个信号的值。压缩过程需要考虑实际应用场景,缓存产生的信号所用内存,最大不能超过1GB。如果超出1GB,算法无效。

3.对数据的压缩,需要保证一定的精度。通过将压缩文件解压之后的结果与原始结果比较,电压信号的差别不超过1nV,电流信号差别不超过1fA,为高精度。如果电压信号差别超过10uV,电流信号差别超过10pA,那么为不可接受精度,算法无效。当精度介于高精度和不可接受精度之间,每增加一个数量级,扣5分。

4.除了需要完成程序设计和测试,还需要完成一份设计报告,包含算法设计和测试效果。

3.评分标准

a)技术评分:60%

结果准确性:所有测例,运行结果和要求的匹配度 35%

程序效率:所有测例的运行时间和内存使用量 20%

错误处理:程序对于错误处理(例子输入错误,计算过程错误等)5%

b)现场表现:40%

设计陈述:算法表述是否清晰,算法的分析是否全面,算法本身的复杂度。程序的设计思路是否合理清晰。20%

回答问题:正确理解问题,准确、迅速回答问题 20%

Routing方向

1.赛题名称

反求图形中心线

2.赛题描述

背景

由于IC版图设计中,path线是使用非常广泛的图形,它由一系列点组成的点序列作为中心线,带有一定的线宽,从而形成连线图形。如下图所示:

cea3ec82f26fea51e24b3789e1ed9adc.png

在制作mask时,通常需要进行opc校正,各种path线图形,由于opc校正会通常变成不规则的多边形。此时的多边形,如果还想还原path线,就需要计算出原有path的中心点列。因此会产生此类问题。

12dad298d326db80d73b85c8d2eb9dfd.png

基于此问题,同时进行一定的扩展,形成如下的问题:

问题描述:给定一个任意不含洞的多边形,指定这个多边形的不相邻的两条边。剩余的所有的边会分成两组。现求一条中心线,希望这条线上的任意一点到这两组边的距离都尽可能相等。

【补充说明】点到一组边的距离定义为该点和这组边上所有点的距离的最小值。

下图有两个简单图形的示例,供参考。

e4ea841cc803fd3453dbd6e2242fdc79.png

要求:要求使用C/C++语言编码,最终产生可执行码。

输入多边形为任意不含洞的多边形,边可以为任意角度的边。

输入多边形的数据为一数据文本文件,其格式为:

V <顶点id> <顶点X坐标> <顶点Y坐标>

V <顶点id> <顶点X坐标> <顶点Y坐标>

……

E1 <顶点id> <顶点id>

E2 <顶点id> <顶点id>

例如,输入文本例子1:

a2bf4a270b7d909c65324c69cb554b41.png

其对应图形和边为:

e46f6f79518245c3b5ad854aa68e00c5.png

输出结果为一系列点坐标,格式为:

(x1,y1)(x2,y2)(x3,y3)……

3.评分标准

a)技术评分:60%

结果准确性:所有测例,运行结果和要求的匹配度 35%

程序效率:所有测例的运行时间和内存使用量 20%

错误处理:程序对于错误处理(例子输入错误,计算过程错误等)5%

b)现场表现:40%

设计陈述:算法表述是否清晰,算法的分析是否全面,算法本身的复杂度。程序的设计思路是否合理清晰。20%

回答问题:正确理解问题,准确、迅速回答问题 20%

4.华大九天赛题讨论QQ群:720835047

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值