第087章 不同意见也是有的(1 / 2)
“各位教授,各位老师,大家好,非常感谢大家能抱着对我的信任加入我们EDA项目组。今天这个会议就是大概讲述一下我们这款极简EDA的设计理念,以及对大家接下来的工作做一个分工。”
实验室四楼小会议室里,宁为正在给项目组的众人做着报告。
压力还是有的。
毕竟除了余兴伟外,年纪最小的也都大了他一轮。
“这么说吧,对于我们项目组即将设计的这款EDA软件,并没有大家想象中的那么复杂。我把它称之为面向对象的EDA软件设计。”
“在这里我先假设每一个由现有技术能够制作出的结构都是一个对象。这些对象我将之分成了四种类型。”
“它们分别是元,即现有技术能够制作的最小结构单位,这个单位是可以随着技术的突破而更新的。”
“组,若干个元彼此连接、排列形成的具有单一功能的结构。”
“群,若干个功能相同或不同的组彼此连接、排列形成的能够独立完成某一特定功能的结构。”
“容器:用以承装元、组或群的结构。”
“每一个对象要都包含属性和函数两部分。”
“属性不仅包含该对象的物理属性,如尺寸、大小等,还包含该对象的索引与表示属性,如代表符号、统一序号等,还包含了该对象的布局属性,如连接方式和排列方式等。函数则必须有输入参数和返回值,是对对象功能的描述,如单项导通、放大、截止等。”
宁为对照着昨天赶出的PPT,给项目组成员表述着他的基础设计理念。
“从这种视角,大家应该看出我们的EDA设计思路其实很简单,一方面我们要让操作者很轻松的将代表不同类型对象的符号在设计界面上进行定位和排列并进行接线;另一方面,操作者的所有操作实际上是计算机后台将对象的函数彼此串联调用,最终形成一个大函数过程。”
“以上是对设计过程的要求。同时,我们的EDA软件要具备仿真功能。EDA仿真过程是向大函数过程输入参数并记录反馈结果的过程,也包括对各个子过程之间传递的参数和返回值的监测。”
“EDA实例化过程需要将对象的布局位置和排列方式生成运行脚本以便控制光刻机进行生产和制造。”
“由以上需求,我们直接引导出软件结构。”
“对象库:用于定义现有的对象并保存未来新设计的对象。”
“函数库:用于保存现有或未来新增对象的函数。”
“设计界面:用于对对象进行布局、排列和连接。”
“函数连接:用于将排列和连接的对象的函数按照排列和连接的方式进行串联和调用。”
“仿真与监控:用于向结构发送参数并检测各个函数节点的返回值。”
“生产函数:用于将对象的布局、排列和连接进行脚本化提供给光刻机用于生产。”
“除此之外,因为这是一款全新的EDA软件,我们没办法依靠外设接口来引入外挂程序,所以我们还要有一个跟其他EDA区别开的库。这个库跟对象库相对应。我们每设计一种结构,便要为这一结构更新一个指令集跟配套的函数。”
“换句话说,我们每针对某个特定问题设计的芯片,都要有全方位的支持。这也是我们的产品差异化竞争之所在。我们的产品并不只是面向特定的大厂专业EDA设计人员,我的初衷是要让一个小学孩子,在看过说明书后,都能够用我们的软件设计出能用的芯片。”
“在我们的软件推出之后,由专业人员设计出的结构跟配套的指令集、函数再经过验证跟审核之后,也可以同步到我们的库中。”