牛人自述模拟电路学习历程_经典模拟电路学习-程序员宅基地

技术标签: FreeThinking  

注:文章内容来自网络,网址不详

复旦攻读微电子专业模拟芯片设计方向研究生开始到现在五年工作经验,已经整整八年了,其间聆听过很多国内外专家的指点。最近,应朋友之邀,写一点心得体会和大家共享。

我记得本科刚毕业时,由于本人打算研究传感器的,后来阴差阳错进了复旦逸夫楼专用集成电路与系统国家重点实验室做研究生。现在想来这个实验室名字大有深意,只是当时惘然。电路和系统,看上去是两个概念,两个层次。 我同学有读电子学与信息系统方向研究生的,那时候知道他们是“系统”的,而我们呢,是做模拟“电路”设计的,自然要偏向电路。而模拟芯片设计初学者对奇思技巧的电路总是很崇拜,尤其是这个领域的最权威的杂志JSSC (IEEE Journal of solid state circuits),以前非常喜欢看,当时立志看完近二十年的文章,打通奇经八脉,总是憧憬啥时候咱也灌水一篇,那时候国内在此杂志发的文章凤毛麟角, 就是在国外读博士,能够在上面发一篇也属优秀了。读研时,我导师是郑增钰教授,李联老师当时已经退休,逸夫楼邀请李老师每个礼拜过来指导。

郑老师治学严谨,女中豪杰。李老师在模拟电路方面属于国内先驱人物,现在在很多公司被聘请为专家或顾问。李老师在87年写的一本(运算放大器设计);即使现在看来也是经典之作。李老师和郑老师是同班同学,所以很要好,我自然相对于我同学能够幸运地得到李老师的指点。李老师和郑老师给我的培养方案是:先从运算放大器学起。所以我记得我刚开始从小电流源开始设计。那时候感觉设计就是靠仿真调整参数。但是我却永远记住了李老师语重心长的话:运放是基础,运放设计弄好了,其他的也就容易了。

当时不大理解,我同学的课题都是AD/DA,锁相环等“高端”的东东,而李老师和郑老师却要我做“原始”的模块,我仅有的在(固体电子学) (国内的垃圾杂志)发过的一篇论文就是轨到轨(rail-to-rail)放大器。做的过程中很郁闷,非常羡慕我同学的项目,但是感觉李老师和郑老师讲的总有他们道理,所以我就专门看JSSC运放方面的文章,基本上近20多年的全看了。当时以为很懂这个了,后来工作后才发现其实还没懂。所谓懂,是要真正融会贯通,否则塞在脑袋里的知识再多,也是死的。但是运算放大器是模拟电路的基石,只有根基扎实方能枝繁叶茂,两位老师的良苦用心工作以后才明白。

总的来说,在复旦,我感触最深的就是郑老师的严谨治学之风和李老师的这句话。 硕士毕业,去找工作,当时有几个offer。 我师兄孙立平,李老师的关门弟?,推荐我去新涛科技,他说里面有个常仲元,鲁汶天主教大学博士,很厉害。我听从师兄建议就去了。新涛当时已经被IDT以8500万美金收购了,成为国内第一家成功的芯片公司。面试我的是公司创始人之一的总经理Howard. C. Yang(杨崇和)。 Howard是Oregon State University 的博士,锁相环专家。

面试时他当时要我画了一个两级放大器带Miller补偿的,我很熟练。他说你面有个零点,我很奇怪,从没听过,云里雾里,后来才知道这个是Howard在国际上首先提出来的,等效模型中有个电阻,他自己命名为杨氏电阻。当时出于礼貌,不断点头。不过他们还是很满意,反正就这样进去了。我呢,面试的惟一的遗憾是没见到常仲元, 大概他出差了。

进入新涛后,下了决心准备术业有专攻。因为本科和研究生时喜欢物理,数学和哲学,花了些精力在这些上面。工作后就得真刀真枪的干了。每天上班仿真之余和下班后,就狂看英文原版书。第一本就是现在流行的Razavi的那本书。读了三遍。感觉大有收获。那时候在新涛,初生牛犊不怕虎,应该来说,我还是做得很出色的,因此得到常总的赏识,被他评价为公司内最有potential的人。偶尔常总会过来指点一把,别人很羡慕。其实我就记住了常总有次聊天时给我讲的心得,他大意是说做模拟电路设计有三个境界:第一是会手算,意思是说pensile-to-paper,电路其实应该手算的,仿真只是证明手算的结果。

第二是,算后要思考,把电路变成一个直观的东西。 第三就是创造电路。我大体上按照这三部曲进行的。Razavi的那本书后面的习题我仔细算了。公司的项目中,我也力图首先以手算为主,放大器的那些参数,都是首先计算再和仿真结果对比。久而久之,我手计算的能力大大提高,一些小信号分析计算,感觉非常顺手。

这里讲一个小插曲,有一次在一个项目中,一个保护回路AC仿真总不稳定,调来调去,总不行,这儿加电容,那儿加电阻,试了几下都不行,就找常总了。因为这个回路很大,所以感觉是瞎子摸象。常总一过来三下五除二就摆平了,他仔细看了,然后就导出一个公式,找出了主极点和带宽表达式。通过这件事,我对常总佩服得五体投地,同时也知道直观的威力。所以后来看书时,都会仔细推导书中的公式,然后再直观思考信号流, 不直观不罢手。一年多下来,对放大器终于能够透彻理解了,感觉学通了, 通之后发现一通百通。最后总结:放大器有两个难点,一个是频率响应,一个是反馈。

其实所谓电路直观,就是用从反馈的角度来思考电路。每次分析了一些书上或者JSSC上的“怪异”电路后,都会感叹:反馈呀,反馈!然后把分析的心得写在paper上面。学通一个领域后再学其他相关领域会有某种“加速”作用。常总的方式是每次做一个新项目时,让下面人先研究研究。我在离开新涛前,做了一个锁相环。我以前没做过,然后就把我同学的硕士论文,以及书和很多paper弄来研究,研究了一个半月,常总过来问我:锁相环的3dB带宽弄懂了吧?我笑答:早就弄懂了。我强大的运放的频率响应知识用在锁相环上,小菜了。我这时已经去研究高深的相位噪声和jitter了。之后不久,一份30多页的英文研究报告发出来,常总大加赞赏!

后来在COMMIT时,有个项目是修改一个RF Transceiver芯片,使之从WCDMA到TD-SCDMA。里面有个基带模拟滤波器。我以前从没接触过滤波器,就花了两个月时间,看了三本英文原版书,第一本有900多页,和N多paper,一下子对整个滤波器领域,开关电容的,GmC的,Active RC的都懂了。提出修改方案时,由于我运放根基扎实,看文章时对于滤波器信号流很容易懂,所以很短时间就能一个人提出芯片电路原理分析和修改方案。最后报告写出来(也是我的又一个得意之作),送给TI. TI那边对这边一下子肃然起敬,Conference call时, 他们首先说这份报告是“Great job!”,我英文没听懂,Julian对我夸大拇指,说“他们对你评价很高呢”。

后来去Dallas, TI那边对我们很尊敬, 我做报告时,很多人来听。总之,现在知道,凡事情,基础很重要,基础扎实学其他的很容易切入,并且越学越快。 我是02年 11月去的COMMIT,当时面试我的也是我现在公司老板Julian。 Julian问我:你觉得SOC (system on chip)设计的环节在哪儿?我说:应该是模拟电路吧,这个比较难一些。Julian说错了,是系统。我当时很不以为然,觉得模拟电路工程师应该花精力在分析和设计电路上。 Julian后来自己run了现在这公司On-Bright,把我也带来,同时也从TI拉了两个,有一个是方博士。我呢,给Julian推荐了朱博士。

这一两年,我和朱博士对方博士佩服得五体投地。方博士是TI华人里面的顶级高手,做产品能力超强。On-Bright现在做电源芯片,我和朱博士做了近两年,知道了系统的重要性。芯片设计最终一定要走向系统,这个是芯片设计的第四重境界。电路如同砖瓦,系统如同大厦。芯片设计工程师一定要从系统角度考虑问题,否则就是只见树木,不见森林。电源芯片中,放大器,比较器都是最最普通的,其难点在于对系统的透彻理解。在On-Bright,我真正见识了做产品,从定义到设计,再到debug, 芯片测试和系统测试,最后到RTP (release to production)。 Julian把TI的先进产品开发流程和项目管理方式引入On-Bright,我和朱博士算是大开眼界,也知道了做产品的艰辛。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/xiahouzuoxin/article/details/12749337

智能推荐

shiro学习——整合jwt时全局异常处理器无法处理JWTFilter中抛出的异常_jwt 和shiro 异常-程序员宅基地

文章浏览阅读4.5k次,点赞13次,收藏20次。springboot+shiro+jwt全局异常处理器无法处理JWTFilter中抛出的异常一、shiro中会出现的异常1、 AuthencationException2、 AuthorizationException二、为什么无法被全局异常处理器处理三、解决方案1、把统一返回的信息写入response中2、使用重定向到处理该错误的controller中一、shiro中会出现的异常1、 AuthencationExceptionAuthenticationException 异常是Shiro在登录认_jwt 和shiro 异常

linux tar -xvf命令,linux tar命令使用详解-程序员宅基地

文章浏览阅读1.8w次。转自:http://blog.csdn.net/ericbaner/article/details/3966741Linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的。生成tar包后,就可以用其它的程序来进行压缩了,所以首先就来讲讲tar命令的基本用法:tar命令的选项有很多(用man tar可以查看到),但常用的就那么几..._tar -xvf

Android-Intent详解与汇总-程序员宅基地

文章浏览阅读80次。1、简介Android中提供了Intent机制来协助应用间的交互与通讯,Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将Intent传递给调用的组件,并完成组件的调用。Intent不仅可用于应用程序之间,也可用于应用程序内部的Activity/Service之间的交互。因此,Intent在这里起..._intent not from weixin msg

关于BeanShell报错提示Error invoking bsh method-程序员宅基地

文章浏览阅读2.3k次。背景:因测试需要打算从外部引用.java和.class文件,奈何报错挥之不去:Error invoking bsh method: eval......各种百度取经之后,决定先抛弃引用,试试BeanShell能不能正常运行,还好结果是满意的特别注意:1.设置变量使用双引号,单引号和双引号有区别2.println中的l是L的小写,不是i的大写引用.class..._error invoking bsh method

python画散点图程序实例_python – 如何在散点图中绘制线条-程序员宅基地

文章浏览阅读1k次。我无法相信这是如此复杂,但我现在尝试和谷歌搜索了一段时间.我只是想用一些图形功能来分析我的散点图.对于初学者,我想简单地添加一行.现在,这不起作用.坦率地说,文档-examples-gallery组合和matplotlib的内容是一个糟糕的信息来源.我的代码基于图库中的简单散点图:# definitions for the axesleft, width = 0.1, 0.85 #0.65bott..._python散点图怎么绘制分隔线

一文了解Cortex-M中断向量表对齐原则-程序员宅基地

文章浏览阅读1.3k次,点赞2次,收藏11次。关注+星标公众号,不错过精彩内容来源| 痞子衡嵌入式一、Cortex-M中断向量表对齐原则中断向量表就是一个集中保存系统全部中断处理函数(xxxIRQHandler)地址的常量数组(函数..._cortex-m 中断向量表

随便推点

修改MAGENTO2.1默认邮件模板_"magneto inlinecss file=\"css/email-inline.css"-程序员宅基地

文章浏览阅读1.3k次。Customize email templatesEmail templates are stored in the <module_dir>/view/<area>/email directory of their respective modules. For example, the template for the new order transactional e..._"magneto inlinecss file=\"css/email-inline.css"

Windows下 命令提示符不能TAB补全_cmd中tab不能补全命令-程序员宅基地

文章浏览阅读3.6k次。第一个修改注册表,让命令提示符支持tab,(只能在当前目录下补全文件名和目录名,不能补全命令)windows键 + r 调出命令提示符窗口 注 : windows键就是图案是Microsoft Windows的视窗徽标的按键 输入 regedit 命令,进入注册表编辑器 3:进入HKEY_LOCAL_MACHINESOFTWAREMicrosoftCommand Processor,选择CompletionChar右键修改, 在弹出的窗口中, 修改值为9 ,选择(十进制),点击确定。4:重_cmd中tab不能补全命令

从零学习Swagger3.0-程序员宅基地

文章浏览阅读9.8k次,点赞12次,收藏42次。一、什么是Swagger?1、前言做为一个后端开发人员或者是前端开发人员,总归是要沟通调试项目的,前端要接口数据,不知道接口地址,我总不能一个一个的把接口地址发给他吧,前端可能要打人了,后端觉得编写及维护接口文档会耗费不少精力,所以双方经常抱怨,经常扯皮,有这时间摸摸鱼不好嘛,所以Swagger就来接手这个重任,将项目的接口进行管理。所以前端只需要这一份接口文档就可以拿到数据,进行数据的处理等。提高开发效率。2、Swagger介绍官方网址:Swagger官网3、使用Swagger的好处无依_swagger3.0

Linux终端如何运行py文件【python代码文件】_怎么在linux终端允许python文件-程序员宅基地

文章浏览阅读7.6w次,点赞60次,收藏262次。在Linux终端【ubuntu】下运行后缀为.py文件的另种方法_怎么在linux终端允许python文件

c语言如何自定义运算公式,怎样用C语言编写数学公式 如何用C语言输入数学公式...-程序员宅基地

文章浏览阅读8k次。导航:网站首页 >怎样用C语言编写数学公式 如何用C语言输入数学公式怎样用C语言编写数学公式 如何用C语言输入数学公式相关问题:匿名网友:1、C语言有现场的常用数学函数,所在函数库为math.h、stdlib.h。函数名及解释:int abs(int i) 返回整型参数i的绝对值double cabs(struct complex znum) 返回复数znum的绝对值double fabs(..._c语言定义公式

算法竞赛入门经典第2版题解目录-程序员宅基地

文章浏览阅读522次。第3章 数组和字符串编号标题难度

推荐文章

热门文章

相关标签