我触摸逻辑规划有三年多的时刻了,说是三年,其实真实有大的进步便是在公司实习的那一年期间。在即将去公司签到之前,把一些东西写下来,期望让我们少走些弯路。
学习逻辑规划首要要有项目挂靠,假如你觉得未来一段时刻你都不或许有的话,接下来的内容你就没有必要再看了,花的时刻再多也只能学到皮裘–许多细节的问题光写代码是发现不到的。并且要真实入门,最好要多做几个项目(这三年大大小小的项目我做有七八个),总线型的和数字信号处理型的最好都要触摸一些,由于这两个方向的逻辑规划差异比较大:前者首要是操控型的,会涉及到状态机等操控逻辑;后者首要是核算型的,难点首要在对符号、浮点数转定点数、位宽等方面的处理上。
第二要有好的师父。这儿说的好的师父并不是指画原理图画了几十年的老师傅,而是指曾在专业IC公司做过一段时刻的人,好的专业IC公司能够触摸国内外最新的规划思维,在他们的协助下,起点就能够比其他人高不少,更重要的是你能够学习逻辑规划思维性的东西!假如你的师傅常常跟你说画原理图的优点,你仍是从头找过师父算了–用原理图规划是一种很落后的方法,即便他们或许会说能够体系级规划(专业的IC规划公司体系级规划必定是由计划确保的,而不会靠原理图这鬼东西)更为清淅。
第三要看一些好的材料。RTL级的书中《Verilog 硬件描绘言语》、EDA前锋写的那几本书都还能够,还有不得不提的是cliff的一些paper(www.sunburst-design.com上有);验证方面入门能够看下《Writting Testbenches》, 进步能够看下snug(Synopsys的用户论坛,里边的文章根本上反映了业界的领先水平)的paper;体系级的能够看看《片上体系-可重用性规划方法学》。
第四要自己多总结,多动脑筋。逻辑规划的东西其实实质上的东西并不多:把RTL级的常用的D触发器、计数器、移位寄存器、状态机、多路选择器等根本的电路标准化、固定化;先做计划再写代码;规划时序;知道束缚原理及怎样加束缚;区分模块时知道怎样做到时序收敛;做验证的时分了解相应言语的行为级描绘(这个必定比RTL级好学多了)然后便是了解testbench的结构化规划。把这些东西的实质都搞清楚了做个合格的逻辑工程师应该是捉襟见肘了,呵呵。
在接下来的部分我首要就第四点随意说点自己的经历,说的欠好还请我们批评指正。